Added class diagram, did some cleanup