Move subcommand testing to test_cli.py. Use the actual command script name when testing run_command().
Start the work to convert usage messages to class-built objects.
More tests, but there seems to be a bug if --title is missing.