Require GHC 8.8 as the minimum compiler for bootstrapping
This allows us to remove several bits of CPP that are either always
true or no longer reachable. As an added bonus, we no longer need to
worry about importing Control.Monad.Fail.fail
qualified to avoid
clashing with Control.Monad.fail
, since the latter is now the same
as the former.