new constructor and methods for camera, a minor bug though