XD-473 Improving command line argument access

Making the command line argument access compatible
with all environments supported by the batch script
XD-579 Adding support for multiple Hadoop distros in XD shell

Adding a startup option  --hadoopDistro for XD shell scripts.
The default is hadoop10 (Apache Hadoop 1.0.4). Based on the
default or passed in distro we will add the correct jars to the
classpath
XDd-576 Change prompt of shell to xd:>
XD-587 Controllers now inherit from a base class for boiler plate code.

Get rid of boilerplate code.

Adding list to command

Now supporting Save command in XD Controller

Triggers now use XD-Controller

TapController is now using XD Controller.

Save now does a parse before "saving".

Added copyright and cleaned up the code.
Merge branch 'XD-473B' of https://github.com/trisberg/spring-xd into trisberg-XD-473B
Fix marshalling of metrics resources; Still pending json as default
Use json as default Accept'd media type + hack for xml JAXBContext initialization
XD-534 Add shell integration tests for tap
Added tests for tap commands create, deploy and destroy
Added AbstractTapIntegrationTest class that has tap commands execution methods
Fix Tap commands result text
Added util httpPostData method for 'http post'
Added util checkIfCounterExists method for verifying counter existence
Fixed StreamCommandTests & NamedChannelTests to use httpPostData() for 'http post'
Fix executeStreamCreate() to add stream before assertion
Add counter value check to verify the stream with counter sink
- Added counter delete support at CountersController
- Added shell command for "counter delete"
- Updated tests to check for counter value