Moved deployment status to its own node

A new "status" node was created under the module deployment
path. The deployment status is now written here. This is
a pre-requisite for placing module deployment properties
under the module deployment node.

See https://jira.spring.io/browse/XD-1338
XD-1338 Hints for partitioning a stream (cont)

This is a continuation of XD-1338. It includes the following:

When writing a module deployment request, the module deployment
properties are written as the node data. These properties
are read by the container executing the deployment.

When a container leaves the cluster, those properties are reused
by the container that the module is redeployed to. This allows
the module deployment to carry forward partition information
(especially partition index) that is unique to that deployment.

Introduced ContainerAwareModuleDeploymentPropertiesProvider to provide
deployment properties for modules targeted to a specific container.
It is an extension of ModuleDeploymentPropertiesProvider that
can be used in areas where deployment properties for a specific
container are required.

Also renamed ExcludingContainerMatcher to RedeploymentContainerMatcher
and modified the implementation to only ever return one Container.

A typo in MessageBusSupport was corrected.

Addressed comments for PR 902
XD-1778 JobExecution restart based on job restartable flag

- Add ability to store `restartable` flag value when deploying batch job
 - Add logic in DistributedJobLocator to create/update/delete entries for
`restartable` flag
 - Create required schema
- At BatchJobExecutionsController, use `jobLocator` to verify against
the restartable flag for the deployed batch job
- Fix tests
Update SI to 4.0.2; S-AMQP to 1.3.4

4.0.2 fixes the expression-based splitter when the input
has duplicate entries.

1.3.4 fixes logging in the recoverer - remove the subclass from
the bus.

2.3.1 is the latest IO version.
XD-1338 Ensure Calculated Partition is Positive

Apply abs() and % to any partition selection

Changed 'divisor' to 'partitionCount'.
XD-1679 - Remove %L from Log4j PatternLayout
Update README to M7
XD-1783: Exceptions thrown on module redeployment

As part of the ZK refactoring, the logging we used to do
when there were no containers for deployment was lost.
The exception NoContainerException was introduced
to indicate that a deployment failed because there were
no containers that met the criteria for deployment.

This is a checked exception since this condition needs
to be handled whenever a module deployment is attempted.
XD-1783: Make failed deployment cleanup more robust

Handling some edge conditions for failed module deployment cleanup.
Change back to BUILD-SNAPSHOT after mistake in M7 release
Module deployment properties on redeploy

Ensure that module deployment properties provided by the stream
or job deployment are included when a module is redeployed
following a container departure.

Rename per quick review by Mark F
Release version 1.0.0.M7
Increment version to 1.0.0.BUILD-SNAPHOT.  Merge M7 branch
XD-1159: Add mongodb sink
Use Jedis (with help from Thomas D)