max_jobs_running could be resat if -j is a changed file.
dummy children was not killed if cmd line was too long.
default number of jobs for --semaphore set to 1.
test25 had race condition.
test22 -j10 added.
test13 -j9 added.
test47 remote cleanup added before test.
test17 remote cleanup added before test.
The code is quite messy, the implementation is fairly slow, but the
structure seems sound and it passes the testsuite.
basename {/} and {/.} implemented.
Flushing of STDERR and STDOUT after each job completes.