GEOMESA-204 Abstract geometric predicate handling and apply it to attribute queries

* Added unit tests which show attribute equals and like queries to the TestFilters.
* Changed the AIFI to use an ECQL filter rather than a polygon for topological comparisons.
* Threaded additional explainQuery 'output' calls in the IndexQueryPlanner.
GEOMESA-217 ID partitioning should hash an array of attributes rather than building a string

Hash array of attributes rather than a string built from attributes
GEOMESA-216 AvroSimpleFeature should cache converters for performance

Converters are cached in the companion object.
GEOMESA-218 fixing batch writer flush on delete of features