added non proxied repos to build.gradle
Use explicit loopback address for XD_HOST

'localhost' isn't working on the CI server.
XD-1345

Use dot as the composed module option name separator

Added test for parser exceptions
XD-1384 adding exclude for spring-data-hadoop Spring Batch dependencies
XD-1350: Remove enums as option coercion mechanism

Made includes/excludes more explicit

Extracted constant for config file location

Split store options between single and distributed
XD-1350 polish
XD-1331 Fix Job Restart

* Improve `ExpandedJobParametersConverter` so that `JobParameters` can be converted to JSON
* Add tests

XD-1331 Code review changes

XD-1331 Code Review Changes - Add Restart Parameter
XD-1368

Refactor container to remove shared module context

Fixed typo in package name

updated getOrder() values

Eliminated shared module context

Core container components moved to a separate application context

Moved PropertyPlaceholderAutoConfiguration to @Import

Renamed container contexts and cleanup following initial review

removed rabbit template from rabbit-container.xml

Fixed ContainerServerApplication auto configuration

Some final clean up per review
XD-1368 polishing
XD-885 Register job listeners

- Register XD BatchJob listeners automatically `by default`
 - Register `jobExecution`, `stepExecution`, `chunk`, `item` and `skip` listeners
automatically when the job module is deployed by setting the corresponding
job and step parser factory beans with jobExecution listeners and step listeners
 - Removed explicit registration of XD listeners on job modules XMLs
- Added job module option "--listeners" that accepts comma separated names of the
listeners to activate and register. By default, all the above
mentioned listeners are registered;
 - To select specific listeners `--listeners=item,skip`
 - To disable all the listeners `--listeners=disable`

XD-1362

- Make all the listeners to use pub/sub notification channels
 - Created `pub/sub` notification channels specific to each listeners
 - Created a generic BatchJobListener that sends the payload to the pub/sub
notification channels and make all the XD BatchJob listeners extend this.
 - Also, created a `pub/sub` notification channel that all the listeners send
message to.

- Created JobNotification plugin
 - Created JobNotification plugin that binds/unbinds the notification channels
to/from the messagebus with named channels. The named channels created are:
  `tap:job:myjobname.job`
  `tap:job:myjobname.step`
  `tap:job:myjobname.chunk`
  `tap:job:myjobname.item`
  `tap:job:myjobname.skip`
 - Fixed StreamConfigParser to support indexing on the tap channel name for
jobs so that the above notification channel syntax would work.

XD-1363

- To be able to tap job output channel
 - There won't be `output` channel for the job module. Instead, the generic
pub/sub channel created above that sends all the notification messages acts
as the tap with syntax `tap:job:myjobname`. If all the builtin listeners are
disabled, then this won't be available as well.

- Refactored Plugins
 - Created` JobPartitioner Plugin` that does the binding/unbinding operations on
partitioner channels to/from messagebus.
 - Created `AbstractMessageBusBinderPlugin` that shares common methods related to
binding/unbinding producer(s) and consumer(s) to message bus.
 - Created `AbstractStreamPlugin` and `AbstractJobPlugin` that act as parent for
Stream and Job Plugins.
 - Assigned the highest precedence to Stream/Job Plugins so that their lifecycle methods
would always run prior to other plugins (Just in case if any of the other plugins might
depend on them)

Fix review comments

- Renamed `notifications` to appropriate names
- Added validation method to verify the job listener option
and simplified the logic
- Fixed assertions