Factors out geolocate, makes it optional.

Factors out the geolocation into it's own service, loading
a URL from server config.