Added Geohash.geohashAtDirection(). Made GeohashEncoding into a generic HashEncoding struct.
Fixed off-by-one crash. Made Geohash conform to Equatable. Added tests for adjacent hashes. Reorganised code, added MARKs.