Created ScaledDrawer and moved drawing functions there
Moved api recording to a new class, ApiRecorder
Drawing more details.