Refactor argument parsing as described in #29
Reorder things sensibly
Tweak test

Trying to fix http://www.cpantesters.org/cpan/report/a2bc8a20-6c03-1014-894e-6f7ad871b27e
Tweak test to skip all if git is older than v1.5.0

The v1.5.0 release is when the 'config' and 'init' subcmds this test
uses were initially added. Since nothing in the main code uses them,
it's not worth adding a 'supports_config' predicate -- just test
directly on the version and bail.