GEOMESA-67 Checking for visibilities before allowing write, enforcing existing schema if present
GEOMESA-101,GEOMESA-130 Performance Enhancements to Iterator Stack For Simple Queries

GEOMESA-101  Optimize geometry only queries in iterator
Add an IndexIterator to the iterator stack which is run in place of the SpatioTemporalIntersectingIterator AND the SimpleFeatureFilteringIterator.

The trigger for this action is a query which satisfies the following:
1) Defines a transform which projects ONLY the geometry and temporal attributes used in the GeoMesa index
2) Filters on only the geometry and temporal attributes, and can be distilled into the selection of a polygon and interval.

If the above requirements are met, the IndexIterator is run and a message indicating such is logged.

GEOMESA-130 Refactor SimpleFeatureFilteringIterator to skip decoding when the ECQL is Filter.INCLUDE
Add logic to IndexQueryPlanner that removes the SimpleFeatureFilteringIterator from the Iterator stack if:
1) No transform is defined.
2) The filter is defined on only the geometry and temporal attributes, and can be distilled into the selection of a polygon and interval.
3) The DensityIterator is not selected via setting of the DENSITY key in the Query.
GEOMESA-138 encode avrosimplefeature field name

Added unicode encoding of feature names and attribute names using Hex, with tests.
GEOMESA-147 loading default auth provider outside SPI process

Enables loading auth provider without the SPI Process.
Merge branch 'accumulo1.5.x/1.x' of github.com:locationtech/geomesa into fcr_preserve_userdata

Conflicts:
	geomesa-core/src/main/scala/geomesa/core/index/IndexQueryPlanner.scala
	geomesa-core/src/main/scala/geomesa/core/iterators/SpatioTemporalIntersectingIterator.scala
Finish updates needed for merge with main branch, and integrate comments from jnh5y.