Fix the worker so it does not leak threads.

Previously, it would start a subscriber thread every time `work`
was called and then leave it running.
Merge pull request #117 from seomoz/stop_thread_leakage

Fix the worker so it does not leak threads.