added input class, fixed camera class, cleaned up