wip improved version of Structs, currently called Structs2.  Pulled out the QuickSortAlgorithm as it has been moved around a few times and renamed CLApp._run to CLApp.run
Structs is no longer abstract, and does not need to be subclassed for every type that we want to store within it
added ThreadPool interface and a fork join implementation
changed IntFunction1 back to an interface; as it provides better java8 support