Tighten up the definition of arityType a bit further,
to make Trac #5625 work. The main change is that we eta-expand (case x of p -> \y. blah) only if the case-expression is in the context of a \x. That is still technically unsound, but it makes a big difference to performance; and the change narrows the unsound cases a lot.
Showing with 80 additions and 60 deletions