Massive changes. Factored code to support argument changes more easily. Added camera and simple-mesh classes.