add the domain spec tests (missed this)
remove some spaces before parens to supress warnings
run true without a path as different test systems may install it elsewhere
check length because diffent ruby versions order options differently

 * length is a good enough indicator that the strings are correct
 * we can't check exactness of strings because the option parser
   in which we generate the rhc-chk command's options from, order
   the options differently depending on the version of ruby used
add a readme on how to add commands
fix options to take a list of switches for future functionality

* options take a variable length argument but since we want to expand this
  in the future to accept things like validation and metadata we need the
  interface to take a fix number of parameters.  Since switches can
  be of variable length we now specify them as a list and then convert
  them back to OptionParser syntax later.
Only flatten 1 level since OptionParser syntax allows for lists
simplify metadata identifiers
style fix
simplify code block
use headline style in section output
cleanups
fix documentation to be linked from toplevel README.md and renamed
clean up domain command a bit
let commander handle rhc help
refactor override Runner.run! for handling error conditions

 * move our runner implementation into the Commands module
 * to_commander no longer handles error processing, that is done in run!
 * split out command validation code into a method
if help is passed in run as if --help was passed in
remove use of command_success and just return 0
small fixes
fix spec tests to reflect string changes