first stab at using SerialWorkerRoutine instead of SerialQueueManager

I'm noticing a race condition (??) where I can run tests just fine, but
running them shortly after will just hang...

$ testify tests.testing_test SerialPoolTest.test_serial_pool_doesnt_fork
PASSED.  1 test / 1 case: 1 passed, 0 failed.  (Total test time 3.14s)

$ testify tests.testing_test SerialPoolTest.test_serial_pool_doesnt_fork
tests.testing_test SerialPoolTest.test_serial_pool_doesnt_fork ...
[hangs forever]