Added a camera object which is passed to the RenderContext to control
the position/zoom (and maybe eventually rotation) of drawing. Also
changed drawing to be done centered at the camera's position rather than
having the camera at the top left corner.