Cleanup of location and add simple icon cache

Also add getMarker and setMarker methods