More additions to Location class. See description.

1) Added a method that returns a string in the format "City, Country"
from latitude and longitude. There are a few problems with it:

- It requires an internet connection to run. It uses the  geocoder
object which connects to Google and requests addresses back. I guess
this means we should only update location data if they have both GPS and
internet enabled.

- It apparently takes a really long time to return data with geocoder.
We're supposed to only run it in the background while the app does
something else. Not quite sure how to do that.

2) Added/changed methods so you can tell the location class to "Listen"
and "Unlisten" for GPS updates.

3) Removed latitude/longitude from user and am instead storing it as
statics in Location for now to keep any problems isolated to one class.

4) Although the code seems okay I haven't actually tested it yet. The
location class remains unimplemented anywhere else. Emulating GPS wasn't
working on my computer.