* Adds associate, conj, multiply, negate, subtract, indistinguishable
* As a result equal is now supported
* Adds a check for recursive loops in resolve (a key/signature method
depending on itself
So far, adds absquare and add. To get these working, especially on mixed
types of arguments, this also adds some additional features:
* Allows conversions to generic types, with the matched type
determined from the return value of the built convertor
* Adds predicate-based type patterns
* Adds conversion from any non-complex type T to Complex(T)
* Starts tests for complex arithmetic