Refactoring to logically separate component modules in order to make it easier to develop tests, metrics, tracing, etc.
Implements a tunable configuration for a single or multi-threaded runtime. Co-authored-by: Zachery Aaron Shores-Chmielewski <zachanon@gmail.com> Reviewed-on: http://zachery.lol/code/code/zacheryasc/swactor/pulls/2