Code Cleanup
Class hierarchy