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

As written, this calls WriteLineAsync and immediately calls Process.Kill, this does not give the worker any time to gracefully shutdown. When there are a hundred thousand connections, it can easily take a few minutes for all of the connections to disconnect.