=pro enable cross builds

* changed zeromq-scala-binding library
* added dependency helpers from master by Johannes.
* modified build-release task to include distributions from cross builds
* removed tar-zip step from release script, because tgz package is not used from the website
* release script now releases for all crossScalaVersions
* dry run is the default now

I will port to master some of this.
I think the right thing to do would be to improve the new "DSL" to allow expressing exactly what you want.

Right now, you could already write it like this:
```scala
val zeroMQClient =
  ScalaVersionDependentModuleID {
    case version if version.startsWith("2.10") => "org.zeromq" % "zeromq-scala-binding_2.10" % "0.0.7"
    case version if version.startsWith("2.11") => "org.spark-project.zeromq" % "zeromq-scala-binding" % "0.0.7-spark"
    case v => throw new RuntimeException("Scala version $v not supported for zeromq")
  }
```

If this is a common enough pattern it would warrant some helpers to avoid the matchers and having to add the exception. E.g.

```scala
val zeroMQClient =
  ScalaVersionDependentModuleID.justForVersions {
    case BinaryScalaVersion("2.10") => "org.zeromq" % "zeromq-scala-binding_2.10" % "0.0.7"
    case BinaryScalaVersion("2.11") => "org.spark-project.zeromq" % "zeromq-scala-binding" % "0.0.7-spark"
  }
```