Qualifiers

An experimental feature for associating assumptions with expressions. Adds a new "Qualified" type which wraps an algebraic or boolean expression and throws a contradiction exception if the assumptions ever become false.
It's not. I'm just getting used to git and I accidentally based my branch on the wrong base!