Remove redundancy and potential bugs

Remove `g->m` in map.cpp and use implicit this pointer instead.
In most cases this makes no difference as usually the `g->m` map is used.
But sometimes a temporary map gets used and it could be fatal if that temporary map changes or uses the main map.

Similar issue in player.cpp: removed references to `g->u`, this fixes some npc related bugs. As npc would refer to `g->u` for checking certain things: `g->u.has_trait` checked traits of PC, not of `this`, code in `player::environmental_revert_effect` would only reset the HP of the PC.