New branch for Command-based rewrite of codebase

Initial commit.  Code compiles, and is assumed complete, but has not been tested.