Begin implementing more robust tests

Intead of matching against complete usage strings, which change every
time I think the output should be different, use qr// where
appropriate. Even smarter, for testing option and argument values, is
to output a structure using Data::Dumper, then read it back in and eval
it and compare it to another structure using is_deeply(). Eventually
I'll convert all of the tests to this method.
Unmark a passing TODO test