Feature adds & refactors to reprojection.

 - Added a mechanism to have a manual conversion between CRS's, so you can substitute a more performant method. Created a benchmark to prove that this was the case for LatLng <-> WebMercator.
 - Optimize .reproject by passing around transforms instead of creating a new one for every point.
Added approximate transform, filling out reprojection logic.

Conflicts:
	proj4/src/main/scala/geotrellis/proj4/Transform.scala
Reprojection with nearest neighbor, bilinear interpolation
Merge remote-tracking branch 'upstream/master' into reproject
Merge remote-tracking branch 'upstream/master' into reproject
Writing unit tests for reprojection, not passing yet.
Unit test around RowTransform, nearest neighbor and approx transform work & work fast
Cleaved Interpolation.scala
Merge remote-tracking branch 'upstream/master' into reproject
Split out interpolation.
Removed BilinearInterpolation.scala
Ignore bilinear test until it's implemented.
Merge pull request #834 from lossyrob/reproject

Reprojection