add support for main commander options
Merge pull request #1 from mgresko/something

add support for main commander options
Meld the Commander and Command abstractions.

Warning: major rewrite.

Now, all Commands may be both runnable and have subcommands.
(Default shows usage/help if command is not runnable).
This leads to a simpler interface for users.

Other changes:
- expose template defaults
- allow overriding of templates
- simpler flag handling

Suggestion: rename this (heavily changed) package to go-command.
Need to clear with original authors first.
updated example to use new formats
formatting change
Fixes comments from @sbinet
Use List variable to determine listing.
typo fix