Added concrete GameWorld class

GameWorld implements the World interface, which is necessary for the
rendering system.
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
Implemented tests for CameraController & GameWorld
Fixed problems w/ GameWorld
Increased test coverage
Created two packages

- bubolo.controllers.input
- bubolo.world.map
Added TankSprite; getInstance() static method to Graphics

- The Graphics.getInstance() static method is only accessible to the
graphics system, and it must not be called before the Graphics class is
explicitly instantiated.
- Enables all graphics classes to access the Graphics system, even if
they don't have a reference to it
- TankSprite now sets the tank camera controller. However, it will need
a way to determine if the tank is the local player before it works
properly.
- Added additional tests
Added main game class and loop

- Main game class: GameApplication
Fixed FindBugs issue in Graphics
Added tests for GameApplication

Also synchronized LigGdxAppTester
Added additional sprite.create overloads

Also added tests for the overloads
Merge pull request #32 from BU-CS673/Canfield

Canfield -> Graphics
Merge pull request #33 from BU-CS673/graphics

Graphics -> Production
In the process of modifying TankSpriteTest, which is failing after merge.
Added Graphics constructor to TankSpriteTest, was failing when run on its own!