Changing how the flying camera works so that it only uses a position, direction, and up vectors. Provided function for rotation around an arbitrary axis.