remove bad practices

1.  never lookup location in the rendering loop.

    Looking up locations is slow.

2.  adjust canvas backstore to match size of canvas, not size of window.

    This means you can use the same code regardless of situation. Just
    setup your CSS how ever you want. If your canvas is inside some other
    container or it's set to 50% or whatever it will do the right
    thing.