refactored the drawing of things so that classes draw themselves