Run testcase for 8124 only with threaded ways
Make sync-all handle all github protocols correctly

This fixes #8824.
Make -XDeriveFunctor more generous about non-last arguments (Trac #8678)

When deriving Functor, Foldable, Traversable, we need only look at the
way that the last type argument is treated.  It's fine for there to
be existentials etc, provided they don't affect the last type argument.

See Note [Check that the type variable is truly universal] in TcDeriv.
Fix the treatment of lexically scoped kind variables (Trac #8856)

The issue here is described in Note [Binding scoped type variables] in
TcPat.  When implementing this fix I was able to make things quite a
bit simpler:
 * The type variables in a type signature now never unify
   with each other, and so can be straightfoward skolems.
 * We only need the SigTv stuff for signatures in patterns,
   and for kind variables.
Test Trac #8856
Allocate statically-sized arrays inline (checkpoint)
Refactor emitCloneArray code
Another check point
Allow some out-of-line primops to have inline versions

An out-of-line primop can provide an inline version e.g. in cases
where we have extra static information that would allow us to emit a
more efficient inline version.
Another checkpoint
Almost working