Rewrite command-line interface

Use helmsman to automatically find the commands, which are now
standalone scripts, and generate a list of commands.

Use commander.js to parse the command lines and generate per-command
help. Owing to a number of bugs and limitations, we use a patched
version, sigh. Upstream has been contacted about fixing things.

Remove ArgumentParser.

Conflicts:
	metapolator
Merge pull request #148 from rrthomas/cli-overhaul

Rewrite command-line interface
Add partially-functioning ternJS support

See issue #140
Merge pull request #149 from rrthomas/ternjs-support

Add partially-functioning ternJS support
Non-functional skeleton of an interpolate command
Take into account comments from @graphicore

Don't use for...in for array iteration

Don't store return value of project.open, as it's the same each time for the
same project.

Don't expect the code to work yet as a result of these changes!
Add partially-functioning ternJS support

See issue #140