Get approximate geocache locations

Use Geocaching.com UTFGrid service [1] to download waypoints, names and
approximate locations for geocaches within given area.

[1] http://tiles01.geocaching.com/map.info?
Fix whitespace error
Move functions related with UTFgrid to separate module
Refine helper functions

Helpers _bordering_tiles and _get_zoom_by_distance do not use Geocaching
instance, so define them as static methods.  Move functions around a bit and
format unit tests for better readability.
Create Area class for area comparisons

Handle quick search creation with Areas instead of cornering points.  This has
really no difference now, but it can be utilized in later phases.
Fix 16e8579: tweak UTFGrid geocache block size determination
Refractor search_quick

Try to be bit more legible and functional.
Fix tests
Improve test coverage

Add new tests for calculating initial tiles and checking for UTFGrid geocache
coordinate block size.
Fix UTFGrid geocache block size detection

The function is supposed to change block size if > 95 % of found
geocache blocks have different size from expected.  This comparison
needs 21 or more caches, so leave early if there are not enough
geocaches to do the comparison.

There are no other means to prevent false detection apart from this
percentage limit.  Nevertheless, it seems extremely unlikely that all
found geocaches would be on the border or otherwise cut out so that part
of the coordinate points would be unnoticed.  If Groundspeak decides to
change their UTFGrid some day, this code needs attention anyway.
Code formating