WIP the actually correct threading mixin stuff

TODO squash this