using clientWidth and clientHeight to get ratio

Turns out the width and height properties of the canvas do not take into account the css style of the element.  Also, it turns out that the context has a reference to the canvas, so we don't need to maintain a separate reference for ourselves.