Properly normalise reduced dicts
- Another chapter in the never-ending TcSimplify.reduceContext saga: after
context reduction of wanted dicts it is not sufficient to normalise them
wrt to the wanted equalities. We also need to take top-level equalities
into account. (In fact, we probably also have to normalise wrt to given
equalities, but I have left that open for the moment - but added a TODO
note.)
- This finally eliminates substEqInDictInsts from TcTyFuns interface and
suggest some further possible clean up (which will be in a separate patch).
Thanks to Roman for the intricate example that uncovered this bug.