Move all commands into a single server class

This allows for some nice abstraction such as assuming that a server
could know when its started or not. And can be treated in an object
oriented way.