initial commit, base classes and geohash