Add zooming to the camera, even out panning

The camera can now zoom on mouse scroll. The panning has been adjusted
to compensate, ensuring that the panning stays constant when the camera
is at a differen zoom level.