Updated with reverse geocoding support