Simplified the Places router removed fetch callbacks

As we update the map whenever "sync" fires we needn't set callbacks
Only query for new POIs if the user position actually changed
Stop resetting map after once the user "drags" it

 - We can't capture zoom events in a similar way as when we reset the
   map ourselves it technically is "zooming", no difference for leaflet

Also stopped resetting the map on "reset" events, seems to be just as
good to only listen to the "sync" event. Needs testing.
Restructured MapView slightly to clarify when the mapbounds are reset

Added small amount of docs around this