make reverse geocoding lazy (on request) and asynchronous