GEOMESA-58 Distributed Aggregation for HeatMaps

The api now supports setting a hint on the query that
directs GeoMesa to aggregate results into sparse matrices
of counts.  Other hints include the bounding box of the
query and the width/height of the requested coverage.  This
enables the iterators to compute the pixel for a given lat/lon.
GEOMESA-59 Allow queries to perform mappings to new types with arbitrary expressions

Allows passing arbitrary expressions into the properties field
of the Query object.  A new schema is computed using the list of
expressions and the mapped SimpleFeature is computed in parallel
on the tablet servers.