GEOMESA-432 Improved GeoMesa Tools script

This PR addresses some usability issues with the geomesa shell script. Now environment variables
for hadoop and accumulo can be optionally set, and individual paths can be overridden by the user.
Also more informative messages are printed when certain variables are not set.

GEOMESA_HOME and GEOMESA_LIB are now set in function calls, "configure" still works and now should
print out what needs to be added to persist the configuration.
GEOMESA-456 Fixing WMS TIME parameters
GEOMESA-417 unique attribute process

* added WPS process to retrieve unique attributes
* cleaned up and standardized explain query output
* fixed typo in minicluster README, moved minicluster logs into logs/ folder
* adding option to sort by count
GEOMESA-424 cql 'OR' filter query does not deduplicate

* moved deduplication code into QueryPlanner.getIterator method and used it for both duplicatable data and OR queries
* refactoring to be a bit more selective
* added inclusion-exclusion test to AccumuloDataStoreTest
GEOMESA-458 Default geom field can have index=false

* Default geometry now always gets index set to true
GEOMESA-455 Add caching as an optional param to data stores

* Adds a caching param to data store constructor
* If caching param is toggled, then requests to getCount and getFeatures
  will cache resulting feature collection in AccumuloFeatureSource
GEOMESA-457 Optimize sorting of results

* Sorts results based on SortBy parameters
GEOMESA-428 checking for SRS when determining axis order in binary output format

* adding default dtg from schema if not specified in request
* ensuring 24 byte encodings all are 24 bytes