Adapted to typeOfKnown/Unknown scheme.
Fixed normalization of record and variant types
Finished implementation for variant and record types
Fixed substitution, freeVars, and fresh
Layout
Layout
Counter monad

Verification and desugaring is not yet possible since we lack
the value for the second type argument of bind.

We need a typed input tree for this.