Add simplified DataSource infrastructure.

This commit implements a significant simplification and refactor
to the data source infrastructure.  There are now only three DataSource
classes (at the moment).
Merge branch 'master' of github.com:geotrellis/geotrellis into feature/datasource2
Add type aliases.
Update tests for new data source classes.
GeoTiffRasterLayer now extends UntiledRasterLayer.
Add reduce(), combine(), fix ValueDataSource.
Fixed combine to parralellize over tiles correctly
Move new tiled test collateral.
Merge pull request #580 from joshmarcus/topic/data_sources

Add new DataSource infrastructure for new client API.
Add combine() methods to DataSources.
Merge pull request #582 from joshmarcus/topic/ds_combine

Add combine() methods to DataSources.
Gave History a face lift.

- Also refactored the internal actors a bit.
Fixing server project, furthur refactors
More refactors to server actors.

- Rename Calculation to StepAggregator.
Fixed demo project
Added toJson to history
Fixes dev project

- Moved creating a router to the Server responsibility. Allows for the ServerActor to remain private to the package, which is good for future refactors of the underlying Actor system.
Merge pull request #584 from lossyrob/topic/history

Gave History a face lift.
Layer url work
Added ArgUrlRasterLayer, io.LoadRasterUrl