Fixed concurrency issues, multiple connections per worker and auto test scenario

I think it's a simple decision - pass what you can through command line arguments to enable starting the worker..pass/receive all additional information through standard I/O as  needed.