V3

This is a method that is used internally by other, public API methods, so location and geohash should have been checked by them. But I can add them, since the performance penalties should not be an issue.