Refactor cmdline execution. Add unit test coverage.

Refactored the cmdline component, including fixing some issues. Removed
System exits from outside of main, replaced with an unchecked exception
to facilitate testing. Fixed issue where providing the -h flag for a
command didn't actually do anything. Added unit test support for the
cmdline component. Fixed .empty files to remove references to hub
internals.
Fixed typo in workflow diagram.
Fixed bug with windows specific path in gradle build.
Upgraded Cobertura plugin and added support for merging subcomponent coverage reports into parent.
Add a few assertions.
Merge pull request #4 from BrettDuclos/master

Cmdline refactor and test coverage.