XD-870 Add Modules List support to XD

XD-870 Full test code coverage for module commands
Renamed ModuleType.equals to equalsType.  Because Sonar was complaining about it.

XD-870 ModuleHandler is now in correct package.
Was in rest package.

XD-870 Now handles requests made by Code Review

The "in" directory exception is no longer needed.

XD-870 now supports the updates made in XD-887

XD-870 Code Review changes now are available.
Added tests to support classpath for the FileModuleRegistry

XD-870 More Code Review changes are now available.
- ModuleHandler renamed to ModuleRepository
- locateContexts are now locateApplicationContexts
- RedisModuleRegistry.findDefinitions now uses maybeLocateClasspath for classpath resolution.

Code Review changes now available.
ModuleType - now supported by locateApplicationContext for any class extending AbstractModuleRegistry.
Improved CommandTests

testListForSink now checks for time as a source.
previously it was checking for time as sink.

Now supports the merge from Eric.
XD-816: Reactivate composite streams
Remove unused trigger.xml file
1st attempt at reorganizing deps (XD-903 prelim)
Move splunk dependency out of analytics
XD-922 Stop AdminServer cleanly

- Fix AdminServer's tomcat stop() to run cleanly
- Added SingleNodeMainServer's stop()
- Updated tests
XD-920 Update MQTT to Snapshot

Fix for Stopping the adapter when no broker
Update to Paho client
XD-911 Reduce the number of critical errors

Remove Package Tangles.
XD-796: Split shell and job 'all' commands

Replaces 'all' option to stream and job 'deploy/undeploy'
and 'destroy' commands with new 'stream all' or 'job all'
syntax.
XD-915: Apply to jdbc module
XD-915: Apply to jms source module
Add Spring nature to module projects.

This allows correct Spring Integration tooling behavior.
XD-890 gradle task for js tests

- Add an Exec task 'jsTest' that runs jasmine spec
  - This doesn't run along with other build tasks as this task requires installation of phantomjs
- Add console-reporter.js from jasmine js library for console reporter
  - Update xd.main.spec to use consolereporter
- Add phantomjs jasmine test runner
  - To open the spec URL and exit phantom on tests pass/fail
- Add SingleNode server launch as dependent task for JS tests
  - This will also make sure to destroy the server process after tests
- Fix PhantomJS spec html to include DOM for tests
XD-896 support --inputType and --outputType module parameters
XD-625: Revert XD-624
Add build dependency to backgroundAdminServer task

- For jsTest task, invoke 'classes' task to build the spring-xd-dirt
  resources before starting backgroundAdminServer
XD-910 Add a processor for client http requests

--Refactored the module to handle a payload.
XD-906 Add aggregate counter monthly resolution

* Create an enum for the package and use this in preference to Joda DateTimeField. We don't need any of the latter's functionality anymore and it can't be used for months or years.
* Add query by month to aggregate counter.
  - Also changed the test to run across more date boundaries (e.g. 2013-2014) and fixed some bugs related to this.
* Add new aggregate options to shell
* Fix potential NPE in aggregate counter
  - When querying beyond with day or month resolution beyond the interval where data is actually recorded, a null value could be returned from the bucket store and cause a NPE. This is now checked and an array of zeroes is used instead.

Jira: https://jira.springsource.org/browse/XD-906
XD-578 Can't access HDFS using the webhdfs protocol

Also address XD-901 regarding different dependencies for webhdfs
in different Hadoop distributions.
Fix SingleNodeMainIntegrationTests' server stop

- Invoke stop() on SingleNodeServer in @After test method
  rather than inside the test method itself
  (This guarantees the server is stopped after each test
   irrespective of test result)