Implement command-based CLI, and start cluster-bringup

This change adds a CLI styled after the Go tool chain, with a design
inspired by that system. It adds 4 new commands, 'run',
'create-cluster', 'join-cluster', and 'version'. Full help is also
supplied.

Local-mode 'run' is fully functional, and 'create-cluster' also works.
Sounds good on using Struct pointers, will do -- always returning 's' did feel awkward. I can also combine the lines, but that seems like a style question more than anything else. Not sure...