This adds the core unification helper functions that do the core work of solving the invariants. This includes the actual Unify, OccursCheck, and Extract which is sometimes known as "zonk". A few other small functions are also included. Co-authored-by: Samuel Gélineau <gelisam@gmail.com>