GEOMESA-201 Compute geometries from Geometry Filters

* This pr makes a first pass at extracting geometries to cover from the geometry filters.
* In order to do this, various things are refactored.
* GeohashUtils.getUniqueGeohashSubstringsInPolygon is widened to accept Geometries.
on a more serious note...you could use the implicit class and call ```poly.getEnvelope.polygon``` instead