Add CanvasView, associated classes, and CanvasDemo