WIP: GEOMESA 306, 305, 296, 295

This is a WIP branch for improvements to ingest, addressing some of the comments from last weeks meeting. Please post comments (but note that the readme will need to updated, I will do this soon). 
* Split off ingest from Tools class, to ensure case class does not reach max size.
* Updated geomesa bash script to properly pipe to ingest, and not split inputs containing spaces (G-306).
* Allowed User to optionally hash feature IDs.
* Added optional arguments for: maxShard, auths, visibilities, and indexSchemaformat
* Made changes to how successes vs failures are counted and logged in SVIngest
* Made checks to ensure maxShard and indexschemaformat could not be both set.
Could we not have a single scala class that we always call, and move this logic into there? It could delegate to the other main classes after dropping the first arg