XD-1281 Create Better UI instead of Boot's default "Whitelabel Error Page"

* Add static 404 page modeled after spring.io
* Add ErrorHandler, extending `org.springframework.boot.actuate.web.BasicErrorController`
  - redirect 404 statuses to static page
Fix compiler error on using java 1.6
XD-1659 Hdfs Acceptance Tests

- hdfs Acc test will wait for file/dir to be created.

  We identified that on a fresh deployment of XD it takes longer for the hdfs to deploy.  So we give it up to 10 seconds to see if the hdfs created the directory before beginning the test.

- waitForPath now throws IllegalStateException instead of eating the Interrupted Exception.

  Also updated the test to use the results from the waitForPath in the assertTrue to determine if the directory and file exist.
XD-1618 UI: Stop JobExecution

- User can stop stoppable job execution
XD-1617 UI: StepExecution progress info

The user can view progress information about a given step

* Add Progress Bar with percentage label to the Step Execution details Screen
* Add dedicated Step Execution Progress page; show Step Execution history details (XD-1625)

Jira: https://jira.spring.io/browse/XD-1617
Remove defaults from log sink metadata description
XD-1641 Handle batchJob re-deployment

- If the container that has the job deployed crashed (without graceful shutdown), then
the BatchJobLocator still holds the entries for the batch job with the given name.
Upon the container departure, the admin leader tries to re-deploy the job module into
available matching container. But, the DistributedJobLocator still holds the reference to
the batch job (from the crashed container).
  - On re-deployment, make sure to delete the entries from DistributedJobLocator and
proceed with the job deployment.
  - Also, any first time job deployment wouldn't reach this block as the admin server
would have already checked for any existing batch job and stops any request to create one.
- If the container gracefully shuts down
  - The `destroy` life-cycle operation on DistributedJobLocator will make sure to remove
the entries for the given job name

Error-handling deployment of multiple jobModules

- Ignore DistributedJobLocator update if there is an existing entry
  - This will allow multiple job modules of the same job definition to be
deployed into single or multiple containers
XD-1531

Renaming xd-config.yml to servers.yml, adding modules.yml

- modules.yml hold configuration specifics for all modules using qualified keys like moduletype:modulename:property

- adding yarn as xd.container.group

Adding zookeeper stub for servers.yml

Removing DEBUG logging
XD-1004 Add JobScheduler support

- Add basic template and service
- Add Streams page
- Update stream views/controllers/routes
- Update states/routes
- Pluralize controllers
- Add shared services
  - Rename `XDCommon` to `XDUtils` and move it to shared services
- Move templates to appropriate modules
- Move `views` into appropriate modules' views
- Add scheduler support
  - Add Job scheduler controller/service/templates/routes
  - Add form validations
  - Active/De-activate scheduleJob button
- Restrict button activation based on the valid form fields
- Remove highlightjs styles

Jira: https://jira.spring.io/browse/XD-1004
XD-1548: Refactor duplicate code in Listeners

Created class ModuleDeploymentWriter to write module deployment
requests to /xd/deployments/modules for both streams and jobs.
This class is now used by ContainerListener, StreamDeploymentListener
and JobDeploymentListener for module deployments.

ModuleDeploymentWriter also catches NodeExists exception as
described in XD-1500.

ContainerRegistar now updates the deployment node to indicate whether
the deployment succeeded or failed. This is a partial solution
to XD-1549; we still need a way to convey this information to
the admin. The ultimate solution for stream state may require
XD-1591.

DefaultContainerMatcher was added to the application context so that the
same instance is shared across the application; this ensures the
round robin distribution of modules.

Addressed review comments.
Fixed compile warning

FlattenedCompositeModuleOptionsMetadata.java:152: warning:
[rawtypes] found raw type: EnumerablePropertySource
	EnumerablePropertySource propertySource = mo.asPropertySource();
	^
missing type arguments for generic class EnumerablePropertySource<T>
where T is a type-variable
XD-1686: Pluralize admins group node

- Since we support multiple admin servers and all of them participate in leadership election,
it might be good pluralizing the leadership group path's node name

/xd/admin -> /xd/admins
XD-1504: Avoid duplication when loading streams for deployment

Introduced class DeploymentLoader to handle the loading of
streams and jobs for deployment. It also includes the loading
of deployment metadata.

Eventually this should be merged with the various ZooKeeper
implementations that work the same. For now this was created
to eliminate duplication between ContainerListener,
JobDeploymentListener, and StreamDeploymentListener.
XD-1575

Fixes XD-1575 by adding support for UDP to the SyslogInboundChannelAdapter. Internally it forks on the Tcp/Datagram configuration depending on the value of the "transport" configuration option. The test was updated to run the TCP tests by default, since they are the only ones that can be run reliably on CI servers. The same tests can be run in UDP mode by specifying -Dtransport=udp on the command line when running the tests but they must be run manually because the tests assume that all messages reach the destination which is not a guarantee with UDP so there's no way to reliably test whether messages were properly sent or not.

XD-1575 updates Reactor to version 1.1.0.RELEASE

XD-1575 minor tweaks
XD-1630: Cut dep from xd-shell to xd-dirt
XD-1536: Updated pre-packaged jobs to allow a delimiter to be injected
where apropriate
* Updated configuration of filejdbc, hdfsjdbc, hdfsmongodb, and jdbchdfs
 jobs to allow for the delimiter to be injected
* Added BatchJobFiledDelimiterOptionMixin to provide metadata around
 new delimiter option
* Updated jdbc_tests script to test the processing of a job using a tab
 as a delimiter.
XD-1536 Followup: Fix shell test
Reordered static method/class in SimpleModule
Fixed stale refs to ModuleDeploymentRequest
XD-1700 Disabled auto-format on JavaDoc comments