XD-196: switch to alternative parser

Initial code drop for parser alternative.  See https://jira.springsource.org/browse/XD-196

More work to be done as DSL language firms up and needs more work on error handling. This merge also contains tests (and fixes) for:
https://jira.springsource.org/browse/XD-159 "improve module parameter parsing"

And the the most recent comments by Jen/Gary in https://github.com/SpringSource/spring-xd/issues/1

Effectively these all work now:

    foo | transform --expression=--payload | bar
    foo |  transform --expression='new StringBuilder(payload).reverse()' | bar
    "foo |  transform --expression=\"'Hello, world!'\" | bar"
    "http --port=9014 | filter --expression=\"payload == 'foo'\" | log"
    http --port=9014 | filter --expression='new Foo()' | log

A key change with this patch is that argument/parameter values with spaces in must be quoted.

Currently it tolerates the `tap @foo` syntax and does exactly as the old parser, converts it under the covers to `tap --channel=foo.0`