Upped the encapsulation of logic

One big commit:
split the various commands into their own classes, easier for expansion

commandparser now calls the other classes to perform the operations