* New primary interface #call makes specs and implementations much
easier
* We had #each mostly for historical reasons that are not relevant
anymore
* Mutation covers the Mutant::Matcher namespace
* I dislike the global infection RSpec does. This commit is a first step
to get a rid of it.
* Also remove the need for `require 'spec_helper` in each spec file with
adjusting `.rspec`.
This will allow to use reporters from matchers avoiding stupid direct
writes to $stderr.
Also it will allow to remove matching from CLI altogether in a phase of
the runner. Allowing to decouple Mutant::Config from VM environment
allowing to serialize it ;)
Step by step. Takes a while.
* 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.
* This specs still have spec per method granularity
* But one file specs multiple methods
* Compatible with mutant spec selector
* Deduplicates boilerplate unit setup