Unification fix to avoid giving up on recoverable errors

If function names don't unify, we shouldn't try to univy arguments!
Otherwise, we can get unrecoverable unification failures if some
unrelated arguments later unify.

Fixes #465