add setInputCommand (useful for 'bot commands' that may wish to react differently based on the command given.) But tie closely enough together to not warrent creating a separate command class object.
Some more helper code in BotCommand abstract class object.
OpCommands object. (So far only part/goto, but should ultimately have other op-like commands in it.)