Proposal to solve Haskell's MPTC dilemma