cleaned up camera class, made new first person camera and made it available outside main framework to be used in all demos