Improved exception handling when doing geocoding on save.

Deal with network errors and any other unhandled exception,
and display meaningful messages for all cases.

So to summarize, here's the complete set of error messages:

**``GQueryError`` (couldn't find a match for the given location)**
**English**: *Couldn't find a suitable match for location "${location}". Please use the "coordinates" tab to manually set the correct map loaction.*
**German**: *Konnte keinen passenden Treffer für den Ort "${location}" finden. Bitte benutzen Sie das Tab "Koordinaten", um den Kartenausschnitt manuell zu setzen.*

**``GTooManyQueriesError`` (daily query limit exceeded)**
**English**: *Geocoding failed because daily query limit has been exceeded.*
**German**: *Die Geocodierung schlug fehl weil das tägliche Abfragen-Limit überschritten wurde.*

**``URLError`` (network error or other urllib related error)**
**English**: *Geocoding failed because of a network error.*
**German**: *Die Geocodierung konnte aufgrund eines Netzwerkfehlers nicht durchgeführt werden.*

**``gmgeocoder.geocode()`` returned more than one result:**
**English**: *More than one location found, chose first match "${place}". Please check that coordinates are correct.*
**German**: *Mehr als ein Ort gefunden. Es wurde das erste Resultat "${place}" gewählt. Prüfen Sie bitte ob die Koordinaten korrekt sind.*

**Any other unhandled exception**
**English**: *Geocoding failed because of an error: ${ecxeption}*
**German**: *Die Geocodierung schlug aufgrund eines Fehlers fehl: ${ecxeption}*