Add Converges to DmdResult

to detect definite convergence (required for nested CPR).
In deferType, return convRes = Converges NoCPR

because this is the right-identity to `bothDmdResult`, and this is the
right thing to do in a lazy context.
Initial work on Nested CPR
Comments and small refactor
Fix a lubDmdResult equation
Unify RetProd and RetSum to RetCon in CPRResult
Use isTypeArg instead of isTyCoArg (forgot why)
Recover [CPR for sum types] (slightly differently)
Loop breakers are not allowed to have a Converges DmdResult
Check mAX_CPR_SIZE in dmdAnalVarApp
Add a flag -fnested-cpr-off to conveniently test the effect of nested CPR
Actually create a nested CPR worker-wrapper
in Demand.lhs, remember what is a sum type

because we want to zap CPR information for sum types not only on the
outermost level, but also nested.
See Note [CPR for sum types]
This comes up in sublist in Listplikefns in nofib’s boyer2.
Temporarily disable nested CPR inside sum types
Allow the CPR w/w to take unboxed tuples apart
Add a warning to dmdTransformDataConSig (which I believe is dead code)