Rename to morpher and cleanup implementation.

With merging this PR:

* The library will be named "morhper" and the github repo will be renamed to mbj/morpher.
* Users have the choice to use a tracking and nontracking evaluation strategy
* The new non tracking evaluation strategy significantly speedups evaluation
* An AST based IR will be used to decouple DSLs from evaluation trees.
* There is NO upgrade path from ducktrap to morpher.
* Ducktrap will be dead.

TODO, These MUST be done before merging to master and release as v0.1.

* Port all features from ducktrap to morpher.
* Add predicates as evaluators
* Add transforming guard nodes
* Add inverse generation
* Add remaining TODOs.
* Add full YARD coverage
* Add full mutation coverage
* Write a good README. //cc @snusnu
* Port rom-mapper!

Status:

Its a spike, not to be merged soon!