Fix #360: Add a cross-building discipline.

The discipline is to have a double binary version suffix for
Scala.js libraries: '_sjs<Scala.js-bin-ver>_<Scala-bin-ver>'.
For example, when building a library for Scala 2.11.0 and
Scala.js 0.5.0, the suffix will be '_sjs0.5_2.11'.

This commit adds the utilities to build CrossVersions that
follow this discipline, as well as an additional dependency
builder %%% which adds the double binary version suffix to
the module ID. Finally, it configures Scala.js projects to
be published with the double binary version suffix by default.

Note that the scalajs-library and scalajs-jasmine-test-framework
are only published with the Scala binary version, since their
release number is already tight to a Scala.js version. So they
should be added with %% and not %%%.
Merge pull request #568 from sjrd/cross-discipline

Fix #360: Add a cross-building discipline.