Demo Changes

These changes are result of driving geotrellis-spark on a cluster to provide demos for presentations. They include some optimizations and a lot of bug fixes.

Most notably geotrellis-spark now does not have a hard dependency on spark and user must use spark-submit to launch it. This makes it a lot easier for geotrellis-spark to be used a library as spark-submit takes care of shipping JARs around.

Also note that Catalog now saves the raster histogram. This allows us to pain each tile with globally appropriate colors.
Why is this called `mapRows`? It doesn't really make sense...unless you're mapping the language to Accumulo rows.

I'd prefer `mapItems`, or `mapPairs`, or `mapKeyValue`...open to other suggestions.