Bump QuickCheck version to test with GHC HEAD

This is due to the AMP (Functor-Applicative-Monad Proposal) that makes
Applicative a superclass of Monad. QuickCheck 2.7.1 (or so) added the
Applicative instance for their Rose type.
Travis-CI: Change to model after haskell/primitive

* Add $CABALVER
* Reduce number of GHC versions tested
* Use cabal-install-1.20 for GHC HEAD
* Use travis_retry