GEOMESA-557 Raster Index Schema

* Wrote RasterIndexSchema
* Wrote RasterIndexSchemaBuilder
* Wrote RasterIndexEntryEncoder
* Wrote RasterIndexEntryDecoder
* Moved raster code out of geomesa-core
* Updated comment to AccumuloRasterQueryPlanner
More readable is:

```scala
val (key, value) = encoder.encode(raster, writeVisibilities)
val mutation = new Mutation(key.getRow)
...
```