Fix factorization bug for As
Remove old merging
Implementation of 2-way unification, without support for all-fail rule
Treat matching and equality checking in premises on same variable to be
Attempt n-way unification
Allow merge point branches to be empty (aka no premises)
Log on unification failure before with failure