Add test for type families, discovered by Roman
Tests this patch: Fri Dec 11 12:01:22 GMT 2009 firstname.lastname@example.org * Fix two related bugs in u_tys When we normalise a type family application we must recursively call uTys, *not* 'go', because the latter loop is only there to look through type synonyms. This bug made the type checker generate ill-typed coercions, which were rejected by Core Lint. A related bug only affects the size of coercions. If faced with (m a) ~ (F b c) where F has arity 1, we want to decompose to m ~ F Int, a ~ c rather than deferring. The application decomposition was being tried last, so we were missing this opportunity.