Introducing Spring Security for authentication and authorisation implementation.
Introducing Thymeleaf for tempting (Login page, user admin screens etc).

Issue: BMS-58
Configuration of Workbench application context for spring security. Thymeleaf configuration. Skeleton login page.

Issue: BMS-58
Enable Workspace resolution (Maven Eclipse Setting).
Updating spring-security version to the latest available in 3.1 series.
Initial commit : passing the authentication token (plaintext user name for now, more secure version todo) when launching web applications from within Workbench.

Issue: BMS-58, BMS-61
Reviewer: RebeccaB
Merge branch 'master' into BMS-33-authentication-authorisation

* master:
  Code Cleanup 1. Removed unused import and instance variable 2. Used constants instead of multiple string literals 3. Removed unused suppressWarnings 4. Moved comment to a new line 5. Resolved cyclomatic complexity of the method initializeLayout by separating codes to different methods     a. Getting installation directory     b. Checking if documents folder is found     c. Deploying documents to tomcat webapps directory     d. Creating the pdf and html links 6. Removed overriden method that only calls a superclass method 7. Added comment to an empty method 8. Used isEmpty() to check for empty collection 9. Moved else and catch beside the close brace 10. Removed unnecessary throws Exception 11.  Moved getting of userInfo to method updateUserInfoIfNecessary 12. Move the open brace beside the method definition 13. Use a local variable instead of reassigning value of a parameter
  Updated POM to make use of Java version 7 as the compilation target, as well as to support Java 7 constructs Defined a spring version property to avoid repetition in the dependency declaration
Initial Commit: Removed Vaadin login screen (LoginWindow, LoginPresenter) from the login workflow of Workbench application. Once authenticated via Spring security based login page, go straight to the workbench main view.
Still using the Workbench's own SessionData based session management for continuity as a lot of things rely on it.

Issue: BMS-59
Reviewer: RebeccaB
Merge: Syncing BMS-33-authentication-authorisation with master.
Deleted Eclipse .settings from source control. Branch sync with master did not cleanly merge this due to conflicts.
Adding the new UserRole entity to the Hibernate config.

Issue: BMS-62
Reviewer: RebeccaB
Minor: Better names for the authentication controller and URLs.
Used authentication success handler to populate Workbench specific SessionData after successful authentication but before redirecting to target url.

Issue: BMS-59
Reviewer: RebeccaB
Explicitly configure dependencies of WorkbenchUserDetailsService instead of relying on lead-time weaving or class path scanning.
Basic styling to make the page not look too raw! Temporary.
Use the Authentication object passed in by framework to retrieve the just authenticated user name - makes it easy to unit test as opposed to using the static SecurityUtil method.
Added unit test for the class.

Issue: BMS-59
Reviewer: RebeccaB
Adding in new login page files and adding security exceptions for the static resources.
Hooking up login form to login action.
Removing unused build file.
Committing web source files and gulp tasks to compile them to the static folder.
Committing unminified web files - better for dev.