Version with file process that compiles and runs. Fixed a couple bugs creating threads. Now start the search thread first so that it tries to start too many worker threads, the last one can be killed and the program will still run to completion.
Also
  - no_push_pending to properly skip symlinks that are one level below root_search_path
  - debug statemnts for directory recursion and within FileWorker
  - returned workers to an rvalue to cleanupWorkers
  - only rethrow an exception if not about to dereference a NULL