Don't lift values in the ANF transformation that have local untranslatable free variables

When transforming a expression to ANF, complex expressions become
let-bound. However, all let-bound values must be representable.
We collect complex values in a bottom-up transformation, meaning
that local variables in these expressions come free variables.

We cannot lift complex expressions that have (local) unstranslatable
free variables to a top-level let-binder. The reason is that
the local untranslatable variables will not ultimately become
let-bound (all let-bound variables must be representable).
So when we would lift these expressions, the ultimate top-level
expression would have new free variables!

Hence we cannot lift complex expressions when they have local
untranslatable free variables.
Add support for Max and Min type-level nat functions
wobble