XD-1719 JobDeploymentPath deployment status

- Update status at `JobDeploymentPath` after the job module is deployed into a container
XD-928: Refactor DelegatingModuleRegistryTests
XD-928 Polishing

- Use a different package name to avoid "the type collides with a package" warning
- Fix type safety warnings
XD-1707 Polishing

JIRA: https://jira.spring.io/browse/XD-1707

Fix bad indentation (eclipse) and call super.recover() from
the AmqpRejectAndDontRequeueRecoverer that was subclassed
to add a WARN log.
XD-1708 Handle module re-deployments

- Update `DefaultContainerMatcher` to use zkConnection to obtain the list
of containers that stream/job module for the same definition might have already been deployed.
 - Filter out this list from the container candidates from the container matcher
- Update and refactor `ContainerListener`'s stream/job re-deployment methods
XD-1338 prep part 2 (work in progress)

Ultimately the goal is to provide the ModuleDeploymentProperties within the
runtime Module instance (e.g. SimpleModule) so that it can be accessed by
plugins. For example, the StreamPlugin will then be able to use any "consumer"
and/or "producer" properties when calling bindConsumer() and bindProducer()
methods on the MessageBus for a given Module.

While initially the plan was simply to pass those deployment properties along
within the DeploymentMetadata, that class itself overlapped with the recently
added ModuleDescriptor. So, this commit actually removes the DeploymentMetadata
class altogether. The ModuleDescriptor replaced the ModuleDeploymentRequest
object, and it wraps a ModuleDefinition (the "essence" of a module that is
shared by all instances within any stream) while adding the context for a
particular module instance within a stream (the group, index,
sourceChannelName, and sinkChannelName). Those properties are the ones that
were also exposed via DeploymentMetadata.

The most significant part of this commit is the modification to the constructor
for SimpleModule as shown below.

BEFORE:

	public SimpleModule(ModuleDefinition definition, DeploymentMetadata metadata) {

AFTER:

    public SimpleModule(ModuleDescriptor descriptor, ModuleDeploymentProperties deploymentProperties)
XD-1338 fix failing tests
Modify ContainerMatcher contract

- Use `Iterable` containers instead of `ContainerRepository` in ContainerMatcher
- Move the logic to filter the containers out of `DefaultContainerMatcher` and have it in
the `ContainerListener`
XD-1726: Change jacoco to 0.7 for jdk 8 builds
Also disabled doclint for jdk 8
XD-1666 Upgrade to Spring Shell 1.1.0.RC3
XD-1708 Polishing

- Add `notNull` assertion on containers in ContainerMater.match()
- Remove `getContainerExclusions` method
Handle NoNodeException in tests

- Suppress `NoNodeException` if thrown when ZooKeeper Stream/JobDefinition repositories deleteAll() is invoked from AbstractControllerIntegrationTests
XD-1727 UI: Add Stream/Job destroy option

- Add `destroy` service for stream/job definitions
- Handle `removal` of stream/job definition row from the page once the destroy request is successfully sent
- Add confirm action support
- Use Bootstrap `modal` to confirm the destroy action
XD-1727 UI: Add ng-Directive to close modal dialogs
Web UI: Stream/Job destroy option handling

- Always allow `destroy` action irrespective of the deployment status
- Fix doc anchor reference links
XD-1710 Enhanced JMX checks

* Uses Http as the source for the ProcessorTests' stream
* Now has the ability to check specific modules/channel combinations in a stream.
* TwitterSearchTest now uses case insensitive search.
* Added another pause for testFileJdbcJob after stream creation