XD-887: Module deps management

Enables smart handling of modules dependencies, to use with their
custom classloader.

Eclipse import experience is fine when used with "$>./gradlew eclipse"
then "import as existent (non gradle) project"

It will suffer however in e.g. debug sessions, as jars for modules
won't be on the classpath of the debugged project (typically xd-dirt).
Users will have to "attach source" on a per session basis
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.