Comments only
Re-do dmdAnalRhs, to deal with the let-up/let-down issue

Here is the plan (not properly commented in the code yet)

* We must do let-down, even for thunks, for strictness

* But to get use-once cardinality on thunks we need
  let-up
      f y = let v = y+1 in v+v
  We want use-once on y.

Solution: the new splitFVs in dmdAnalRhs, which sends strictness
info down into the body but keeps usage info for the binding
site only.
Move DynFlags into AnalEnv
Reinstate no-updaete selectors
Make UProd u `both` Used  give  Used

See Note [Used shoud win] in Demand

I think this will avoid some reboxing costs.