Frontend map

Map movement now depends on the zoom level, as does the speed of zoom. Zoom also takes into consideration the rotation of the map.