Re-write to use APIs

Now uses the stackexcahnge API and the geonames API

Signed-off-by: Henry Walshaw <henry.walshaw@gmail.com>
Match lat/lng for location

If the user has entered a latitude / longitude for location then match that rather than querying the server and failing

Signed-off-by: Henry Walshaw <henry.walshaw@gmail.com>