creates a canvas with a 2D context