Add camera class
Use camera class to keep track of orientation and position of camera
Use camera class to generate view matrix