Added more testing support

I added a testIncludes and testExcludes parameter to support more robust
testing, particularly to unit test executables by excluding the main
routine and including a test main routine. I preserved the previous
behavior whenever testIncludes and testExcludes are not specified.

I added a test resource directory and copy all files within it into the test working directory. I use it to move a log4cxx properties file into place for better test log output and recording.