moved the drawing routines to its own class primarily to have a global scaling factor specific to the drawing routines