canvas that can take many objects and drawable objects
add items that mixin drawable behaviour
spy and stub in tests
move position logic out of drawable and into items
describe drawable object and what an object extending it should have