Attempt to get boundary geohashes to line up with PostGIS ST_GeoHash and geohash.org

At lat/lon 0,0 the output of geohash should be s00000000000 to match PostGIS
=> select ST_GeoHash(ST_SetSRID(ST_MakePoint(0,0),4326),12);
  st_geohash  
--------------
 s00000000000

Similar issue was fixed in PostGIS to match geohash.org:
Reference: http://trac.osgeo.org/postgis/ticket/2201

Also:
Add asserts for hashes around boundary/pole conditions.