Work on making Coercible work with recursive newtypes.

This commit includes significant refactoring in getCoercibleInst
in TcInteract. Next up: generalizing Coercion.
Added GenCoercion, and changed instNewTyCon_maybe to use eta-reduced
version.