Refactoring CAS core to exclude web components

Based on the discussion posted here, a proposal has been made to clean up the cas-server-core module and remove components and classes that are specifically related to web development. This initially might include all src/test classes that belong to the org.jasig.cas.web package and its children, but further analysis might require others as well as maven dependencies to be moved or removed as well. 

The motivation behind this proposal is to allow the core module to specifically focus on cas core services and to keep the module as clean and as small as possible without any further assumptions on the deployment environment. 

Components to be moved

The following "src" components may be suitable to be moved from core:

Source components to be moved
/cas-server-core/src/main/java/org/jasig/cas/web/DelegateController.java
/cas-server-core/src/main/java/org/jasig/cas/web/bind/CredentialsBinder.java
/cas-server-core/src/main/java/org/jasig/cas/web/flow/AbstractNonInteractiveCredentialsAction.java
/cas-server-core/src/main/java/org/jasig/cas/web/flow/AuthenticationViaFormAction.java
/cas-server-core/src/main/java/org/jasig/cas/web/init/SafeContextLoaderListener.java
/cas-server-core/src/main/java/org/jasig/cas/web/init/SafeDispatcherServlet.java
/cas-server-core/src/main/java/org/jasig/cas/web/support/AbstractSingleSignOutEnabledArgumentExtractor.java
/cas-server-core/src/main/java/org/jasig/cas/web/support/ArgumentExtractor.java
/cas-server-core/src/main/java/org/jasig/cas/web/support/CasArgumentExtractor.java
/cas-server-core/src/main/java/org/jasig/cas/web/support/WebUtils.java
/cas-server-core/src/main/java/org/jasig/cas/web/view/AbstractCasView.java

The following "test" components may be suitable to be moved from core:

Test components to be moved
/cas-server-core/src/test/java/org/jasig/cas/web/flow/AuthenticationViaFormActionTests.java
/cas-server-core/src/test/java/org/jasig/cas/web/init/SafeContextLoaderListenerTests.java
/cas-server-core/src/test/java/org/jasig/cas/web/init/SafeDispatcherServletTests.java

Spring web-mvc dependency and others might also be suitable candidates for removal. 

Dropping Safe* spring wrappers

The Safe* spring wrappers that are to load the context, etc will be dropped in this move. The default behavior of the Spring framework should now suffice. 

cas-server-webapp-support module?

Since the above classes may be shared across the CAS codebase between various other modules (webapp, management-webapp, etc), it was proposed to that a new module be created, cas-server-webapp that would be a jar-producing project, allowing moving those shared classes out of core while still allowing them to be shared unduplicated between the webapps. This may still be up for evaluation depending on the changeset that is to be moved and how feasible/simple that approach might be in the long run.