Camera class + improved camera movement

This commit adds a Camera class which is responsible for improved
movement.
It can be used to move independently from any entity, for example to fly
over a level before the game starts. But it can also be used to chase an
entity which means it will follow that entity wherever it goes.
It is possible to set the "chaseAccuracy", a variable used to indicate
how fast the camera chases. Lower values make the chasing softer and
slower, while a value of 1 or higher means that the camera is always at
the exact same position as the entity.