Feature/testkit

Main purpose of this pull is to break out test helper classes outside of geotrellis test such that library consumers may use them. This prompted a minor cleanup of the Build.scala, a lot of dependencies were moved to Dependency.scala such that they may increment together amongst sub-projects and provide an easily diff'ed place to check for changes. Likely further cleanup/more defined project structure is warranted.

In addition the folder structure changed, <root>/src moved into <root>/core/src and <root>src/test is now under <root>/core-test. The new test data folder is <root>/core-test/data. Finally <root>/geotrellis-spark was moved to <root>/spark to be consistent with the naming convention.

root project now includes core and core-test, allowing normal compile/test/run from sbt without switching projects.