Put update logic into "draw" method since it's designed as a direct drawing implementation, everything should be inside drawing part
Add a simple CanvasContext for dev
Try to add some simple Canvas like primitives drawing API