GEOMESA-209 - Identifying unique GeoHash sub-strings in a polygon is bot...

...h slow and inaccurate

Added a few new unit tests, re-wrote the way we compute these
GeoHash sub-strings, and added a few utility methods to the
RectangleGeoHashIterator and the GeoHash.
The code is confusing.  I added a few comments, but will leave it as-is in the hope that our new query planner will make this enumeration obsolete.  Yay!