declare camera as an abstract base class, have walkcam and arcballcam as separate entities
cleanups