refactored map handling: switch to use leaflet instead of openlayers