Added camera movement, minor refactoring.