In CoreSubst, optimize Coercible values aggressively

just like boxed type equalities.
In simpleOptExpr, unfold compulsary unfoldings

such as that of coerce.
Add Case TyConAppCo to match_co
Test case for RULE map coerce = coerce

(This tests #2110.)