Split up Benchmark.scala
Merge remote-tracking branch 'upstream/master' into benchmark
Changed LocalOp raster reduce.
Split up Benchmark.scala
Changed LocalOp raster reduce.
More benches, png trouble.
Merged upstream
Benchmark IO, changed how ArgReader reads args.
Merge remote-tracking branch 'upstream/master' into benchmark-0.9
Reintroduced histogram caching for color maps.

Turns out that having the color map from a histogram is a huge performance gain, so I implemented the histogram caching as an option for rendering operations.
More render png work.
Merging Png and IO work.
Fixes to warp
At a place with file IO that is fast, about to try something new.

- Array.fill is evil (slow). Created implicit classes so you can do

```scala
val empty = Array.ofDim[INT](cols*rows).fill(NODATA)
```

which will be much faster.
Rewrote Warp, IO is very fast.
Benchmarking. IO improvements. Fixes #414.

- RasterSourceSeq for having control of what rasters are loaded at a time.
- Upgraded to sbt 0.13
Improved error messages for loading rasters.
Tests, tweaks to benchmarks.
Merge remote-tracking branch 'upstream/master' into benchmark-0.9
Merge pull request #675 from lossyrob/benchmark-0.9

Benchmarking. IO changes. Png changes. Warp.