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

Instead of doing it like this it might make more sense to start with the of connections that aren't connected and remove until the list of empty. That way you don't have to enumerate all of the connections each time.