invalidate map caches when a new map is loaded (map::load)
Move cache invalidation to map::loadn,

That function is called from map:load and from map::shift.
Invalidating caches is cheap, doesn't matter if this is done onve for each new submap.
Fixes bug in submap refactor.

Forgot to multiply submap position by submap size.
Merge branch 'map-caching-invalidate' of https://github.com/BevapDin/Cataclysm-DDA into fixmerge
Merge branch 'master' of https://github.com/CIB/Cataclysm-DDA into fixmerge