Constrained player movement to single direction.

Players can now only move perpendicular to the axis. Added direction
class. removed dead code from camera class.
Added tile class.

Added tile class, which is responsible for rendering tiles and holding
collision data. This decouples the tiles from the map class, so that new
tiles can be added without adding any new code to the map class. Also
added pygame clock to throttle framerate more intelligently.