RFC Extract Geometries, Widen Geohash coverings, and minor refactoring.

This branch: 
 * widens getUniqueGeohashSubstringsInPolygon to accept Geometries rather than merely Polygons.
 * pulls geometries from actually Filters rather than using FilterToAccumulo.
 * pulls out some of the Filter processing as a trait.
Just want to make sure I'm reading this right:  If there are two members of the collection -- the northern and southern hemispheres -- then `wholeWorld` will return false, because no single element in the collection is equal to the entire world, yes?  If so, and if these geometries are all joined with ANDs, then is there merit in seeing if the union of the geometries is equivalent to the whole world?  I just want to make sure we don't miss an easy way to short-circuit the query-planning process.