refactor _geolocation code to reuse code from Instance model

`python manage.py sync_mongo -ar` is required to fix existing records.