Checks whether the tyvar and covar environments are empty. This
function should be used over
isEmptySubst when substituting for
types, because types currently do not contain expressions; we can
safely disregard the expression environment when deciding whether to
skip a substitution. Using
isEmptyTCvSubst gives us a
non-trivial performance boost (up to 70% less allocation for T18223)