Added CameraController

- CameraController interface
- TankCameraController implementation, which moves the camera based on
the position of the tank
- Updated World with getMapWidth and getMapHeight methods, which are
needed by TankCameraControllers
- Update GameWorld impl based on World interface updates
- Added Graphics.addCameraController method