Optimize Creature::getPosition()

The function is extensively called in getSpectatorsInternal, which is
one of the most intensive functions in the server. Although the Position
object can be seen as redundant, it saves us from having to dereference
_tile to get the creatures position.
Rearrange data members in Game class

creatures and players are now unordered maps, this means that they no
longer contain creatures and players in the same order they were
inserted but makes lookups significantly faster. The only place where
the order of players was relevant was in the !online command, it is no
longer sorted by login time.