Improve thread management and require autostart

This is definitely gonna make people hate us again. 
I think we should totally just do it. 
It makes our thread pool sane and debuggable. 

Comments please.