Improve normalization of names
Improve normalization of names

Separate normalization of class names from normalization of command and
arg names. Previously, it was possible to call a command named `a` using
`A` on the command line because the class name normalization rules would
be applied.

Also, `Command.normalize_name()` is now a static method (as is the newly
added `Command.normalize_class_name()`).

wylee/runcommands,wylee/runcommands