Fix missing unboxed tuple RuntimeReps (Trac #16565)
Unboxed tuples and sums take extra RuntimeRep arguments,
which must be manually passed in a few places.
This was not done in deSugar/Check.
This error was hidden because zipping functions in TyCoRep
ignored lists with mismatching length. This is now fixed;
the lengths are now checked by calling zipEqual.
As suggested in Trac #16565, I moved checking for isTyVar and
isCoVar to zipTyEnv and zipCoEnv.
(cherry picked from commit 69b1633104a43d5654e65f2c05fa6b73775936e2)