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-926 Update to SPR 4.0.0.M3

Issues:

- GenericApplicationContext needs refresh()
- GenericApplicationContext doesn't allow getBean after destroy
     the ModuleDeployer tried to unbind the channels after destroying the context
- Problem with @Autowire and @Qualifier when bean in parent context

Resolution:

- Add refresh() to test that needs it
- move module.close() until after unbind
- Under investigation; work around is to not use a qualifier but name the parameter with the bean name

Also:

- Add qualifier to SimpleModule.toString() to enable debugging when the same module is deployed multiple times in tests
INT-926 Polishing

- Stop the module before unbinding it
- Destroy the module's context after unbinding it

Previously, the context was stopped and destroyed in module.stop()
which caused the unbind to fail with SPR40.