Movement Direction & Random Placement

Objects can now be randomly placed on the map.
The player direction should now be obtainable via the map's
getPlayerDirection() method as an enumeration.
Merge remote-tracking branch 'origin/collision-movement'