Deterministic Fresh Lifetime Generation & Capture Avoiding Substitution

Deterministically generate fresh lifetimes:
- Lifetimes for match, block, and function activations are guaranteed to be unique among stack frames
- Lifetimes for capture-avoiding substitution are guaranteed to not be in the substitution list

`subst-\ell` no longer crashes when it encounters a lifetime it has to substitution for

Function activations substitute their actual lifetimes for their formal lifetimes