cleaned up the mess of the former code, categorized commands into own classes.

Will be sprayed for bugs and any other bugs that survive the spraying
will be squashed. Increase in commands will be implemented in v1.2.