Begin reorganization of code into good OO