More fixes to cardinality analysis

* Deal with RHSs by using collectBinders, just as we now
  do in the typing rules, rather than by making a
  "vanillaCallDmd". The latter doesn't work well because
     - vanillaCallDmd should be C1(C1(...C1(U))), but
     - that gives used-once usage to the lambda binders of the
       RHS which isn't right
  Better just to decompose the RHS

* Remove the letrec-bound binders in dmdAnalRhs, since we
  can't compute a sensible demand for them anyway, and
  we don't want them messing up the fixpoint

* Use the new Demand.isWeakDmd (rather than isStrictDmd) when
  splitting the environment (an optimisation to speed up fixpointing)
  in dmdFix.

* Remove dead code