Workaround Scala bug SI-8011
Address type error noticed by 2.11.x

    case class Mapper[T, P <: HList, U, R]

    mapper.asInstanceOf[Mapper[Any, Any, Any, Any]]   // invalid
    mapper.asInstanceOf[Mapper[Any, HList, Any, Any]] // okay!

This wasn't caught in Scala 2.10.x because of SI-7756.
Don't load the macro-paradise plugin under 2.11

The required functionality (quasiquites) is now part of the normal
compiler.

This has the nice effect of avoiding bugs like:

  https://github.com/scalamacros/paradise/issues/7
Scala 2.11 compatible dependencies

 - Bump minor versions of Scalaz and Scalacheck
 - Exclude unwanted transitive depenencies of scala-compiler.
   This is a temporary measure that will not be needed after 2.11.0-M8
   as the compiler will no longer depend on the prior version of
   xml and parser-combinators.
 - Use (fully) cross built version of Shapeless

.
Explicit type annotation to help the compiler.

Workaround for:

    [error] /Users/jason/code/specs2/matcher-extra/src/main/scala/org/specs2/matcher/MatcherMacros.scala:55: No implicit view available from (_158.u.DefDef, _193.u.DefDef, _230.u.DefDef) forSome { val _158: scala.reflect.api.QuasiquoteCompatV2{val u: c.universe.type}; val _193: scala.reflect.api.QuasiquoteCompatV2{val u: c.universe.type}; val _230: scala.reflect.api.QuasiquoteCompatV2{val u: c.universe.type} } => (A1, A2, A3).
    [error]     }.unzip3
Workaround subtle change in Regex#unapplySeq

We now hit a different overload and get back a `Vector[String]`,
rather than a `List[String]`. Our pattern match assumes `List`.

I've lodged a bug against Scala to improve the backwards
compatibility:

  https://issues.scala-lang.org/browse/SI-8022
Travis builds for 2.10.3 and 2.11.0-M7
Merge pull request #217 from retronym/topic/2.11-compat-pr

building specs2 for both Scala 2.10.3 and 2.11.0-M7