Doc worker

Documenting the internals of the worker and the different interactions.  This is mostly for me to understand the flow of things, but should be good for anyone looking at the code.  

Still more to document, sending out early to see if my understanding is correct.