upgrade `betaVar` to treat a `slot` like a `var`

Before:

>> :c ((f : forall b. Lame b => b) -> f) lame
\{a} -> (\{b} -> b a) slot{0}

After:

>> :c ((f : forall b. Lame b => b) -> f) lame
slot{0}
Let the optimizer beta reduce super-class selectors and literals