* The parallelization runner almost immediately calls a fork and gets
blocked on waitpid() releasing the GIL.
* Threads have lower resource usage than processes
* There is a chance mutant will get faster on smaller machines and might
scale better on bigger.
* Nuke around 800 lock
* Honor LSP with not anymore squeezing something non LSP compatible in
the same inheritance tree.
* Separate running from result tree.
* Clean up kill logic and early exits on already dead mutations.
* Fix #runnin? smell for reporters.
* Decouple config object from VM state. Makes it serializable to enable
config loading.
* Fix sequence of global VM events to match PRIOR rspec infects VM with
gazillions of classes / modules. Thix fixes a startup speed
degeneration.
* Various fixes to enhance determinism.
* Replace some unneded manual double dispatch with single manual dispatch for
reporter / runners.
* I do not use 1.9.3
* Also keeping them in each file increases mental overhead (true it *can* be autoamted)
* None of the files encodes NON ASCII chars.
* I do not expect it makes any difference, since nobody programmatically
will consume strings generated by mutant under the assumption they are UTF-8 encoded.
* 1.9.3 Users have to deal with the encoding fuckup under ruby anyways.