Bugfixing. Mostly, refining treatment of unboxed tuples.

With the new Levity stuff, an unboxed tuple quantifies over levity
variables. This violates assumptions around the types of tuples
in many places; this patch fixes hopefully all of these places.

See also Note [Unboxed tuple levity vars] in TyCon.