[geolocation] Fixes for Bugs 1022630, 1027489, and 1022637

I think this could go in a separate conditional with the `savecity` and `saveregion` checks. That way, if a user changes their location storage preferences but not their location, you don't geocode them unnecessarily.