Move drawing logic to drawers

Close #1106.
lets just name it `setClass` rather than `classed` since the semantics are so different. good catch @bluong