Make build relocatable

Prepend source dir to anything in the source tree.
Fix config file include
Update build script cabal file
Rename shake package dirs setting in cabal file
Update build system after moving pro stuff to separate directory
Use cabal package version to version Shake rules
Use default modules when not specified on the command line
Use gtest provided by NDK on Android
Pass ANDROID_NDK to config files directly
Prepend source directory to include path
Add tool for dumping config files

Also need to update shake-language-c and add unordered-containers to
dependencies.
Disable catch test runner on Android and print warning
Make sure that sourceDir is prepended to all config file paths
Remove stale code
Remove unused shake.cfg