Reimplemented TearDown support in new DSL

Also rewrote much of the DSL tests
Updated projections file

Removed cli, because I never use it, and added alternate mappings from specs to
implementation (now the source just needs to be updated).
Renamed MatcherSpecs to MatchersSpecs

It is a spec file for all matchers, not just a single one.
And this renaming makes the file pair (test + implementation) follow a naming
convention that allows vim projections alternate file navigation.