Reuse the same projectionMatrix object in updateProjectionMatrix()
Add options for field of view, near, and far in the projection matrix. Closes GH-3