New (backwards compat) CLI for FAKE.
* New CLI for FAKE that uses UnionArgParser.
* If new CLI cannot parse, use old CLI for backwards compat.
* Strongly typed and easy to read and modify.
* Less brittle in face of changes needed for #438 etc.
* Generates documentation.
* Supports combination with app.config settings.
* Support long and short switches (e.g. --version or -v).
* Support multi-values (e.g. --envVar key value --envVar key value).
* Make env flag switches explicit (i.e. --envFlag nameWhoseValWillBeTrue).
* Print old and new help.
Merge remote-tracking branch 'upstream/master' into new-cli

Conflicts:
	src/app/FakeLib/FSIHelper.fs
Fix debug command line arguments (had left some local test ones in previous commit).
* Make script and target positional arguments on the new CLI.
* Update usage documentation strings and usage print function.
* Add basic tests for CLI positional argument parsing.
Merge remote-tracking branch 'upstream/master' into new-cli
Merge remote-tracking branch 'upstream/master' into new-cli
Remove usage of F# 3.1 named DU values as not supported on the Travis CI build server.
Merge pull request #455 from bentayloruk/new-cli

New (backwards compat) CLI for FAKE that includes FSI cmd args passing