pulled the command class out and put it into commandler.py for easier unitests