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.
Shouldn't we be able to write `Seq(bboxPoly)` here, since `tweakedGeoms = geomFilters.map(updateTopologicalFilters(_, featureType))`, and `updateTopologicalFilters` already calls the other routines to make the geometries safe?