XD-2181 Add configuration options to servers.yml

* Add configuration options to servers.yml
* Update test configurations to use the scheme suggested in servers.yml
XD-1616 UI: Add username/password screen

* Add Thymeleaf template
  - Configure `Gruntfile.js` to build `login.html` and copy to Thymeleaf template directory during Grunt build
* Add Spring MVC controller to handle login
* Polish login related styles in `main.less`
* Convert `spring-xd-ui` module to Java module (Spring Boot)
  - Allows for pluggable UI (`spring-xd-dirt` simply declares a dependency to the `spring-xd-ui` module)
  - Clean-up `spring-xd-ui` related tasks in `build.gradle`
  - Allows the UI (and the Thymeleaf templates) to run in isolation
  - Remove admin ui controller configuration from `/src/main/java/org/springframework/xd/dirt/rest/RestConfiguration.java`
XD-1616 Add MediaTypeRequestMatcher

* Use the `LoginUrlAuthenticationEntryPoint` for `MediaType.TEXT_HTML` requests
XD-1616 Add `AuthenticationEntryPoint`s

* Add `LoginUrlAuthenticationEntryPoint` for request with media-type `MediaType.TEXT_HTML`
* Add `BasicAuthenticationEntryPoint` for all other requests using `AnyRequestMatcher`
* Add `@ConditionalOnProperty` so configuration only applies if `security.basic.enabled` is `true`
XD-1616 Add tests

* Polishing
XD-1616 Update `.gitignore`

* Ignore `src/main/resources/public/admin-ui` from being checked in