WIP Canvas2D refactoring.