Up until now, every new app has been setup with a copy of the scripts to build, test and run. Which has some obvious downsides when they fall out of sync and lose functionality. Also there were separate scripts for C++ and C# which leads to more files to copy and paste.
So now I've got a centralized set of scripts, and simple wrappers for each app. I've taken this opportunity to merge C++ and C# functionality so I can call Build.sh for C++ and Build.sh --CS for C#.
I've also added some bonus functionality to allow easy switching between the default of running C++ apps in gdb to using Valgrind for leak tracking. Previously this would require manually changing the script to uncomment lines.