WebUI: enable/disable schedule action

- Instead of show/hide the schedule button, use
`enable/disable` the button based on the validity
of the job trigger stream name and fixed delay number
XD-1310 JobExecution already running error msg

- Fix error message to use JobInstance (similar to what the container would throw)
- Update BatchJobExecutionsControllerIntegrationTests
XD-1338 RabbitMessageBus Paritioning Support

Producers use `partitionKeyExpression` and
`partitionExpression` (optional) applied to the
key. The modulo operation is then applied, with
the module count as the divisor.

If no `partitionExpression` is provided, the bus's
`PartitionStrategy` is invoked; the default strategy
returns `key.hashCode() % count`.

The resulting value is added to the message headers so
it can be used in the routing key expression.

Consumers use their 'partition' property to
determine which queue to listen to.

The deployment supervisor needs to add this
property for each module instance deployed,
such that there is at least one consumer for
each partition.

XD-1338 Producer Partitioning Straw Man

Polishing

Add moduleCount property; declare partition queues.

Pass partition properties (specifically, count) to consumer/producer.

Add Consumer Support

2nd commit message:
Polishing - Support Java Partitioning; PR Comments

If the module deployment properties contains
a class name (for the extractor or partitioner)
it is dynamically added as a bean to the context.

3rd commit message:
Fix Typo in ParameterName

s/partioner/partitioner/

4th commit message:
Polishing - Rename to PartitionSelector
XD-1763 Update to Spring Batch 3.0 RELEASE
XD-1755 changed gemfire source to use client cache
XD-1750 Exception handling at module info cmd

Since the option value gets converted at Shell Converter `QualifiedModuleNameConverter`, throw ShellException in case of invalid syntax or module type.

- Validate the info option syntax
  - Check for ":" and expect at least module type is specified
- Validate the module type
  - throw IllegalArgumentException for invalid module type

Fix `NullPointerException` at ModuleController if module definition doesn't exist for the given module name

- Throw `NoSuchModuleException` if the module definition doesn't exist
- Add test

Address review comments
XD-1750 polishing on merge
XD-1655,XD-1654,XD-1217 rewrite twittersearch module

Add Twitter(Search/Stream)OptionsMetadata
Fixed ModuleOption message