Refactor out base 'Command' class and add 'server' command

Some refactoring of existing commands.

God I hate this code so much I wish I had time to rewrite it all. 8^(
Build 0.02