GeoIP backend implementation
Merge pull request #1700 from cmouse/new-geobackend

First version of new geoipbackend