Make `new` optional
Add getters for width, height, context and canvas
Add a lot more methods and setters

from https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D