Display warning when the scalalib/source submodule is not up-to-date.

This also fixes #103.
Add test suite for Java regex emulation.

This fixes several issues in the regex implementation:

 - Calling match accessors before find should throw
   IllegalStateException.
 - `Matcher.hitEnd` should return true if last match failed.
 - `Matcher.appendReplacement` should return the matcher.
 - Implement support for `Matcher.region`.

Fixes #108
Merge pull request #112 from jonas/java-regex-test-suite

Add test suite for Java regex emulation.
Fix #117: Implement java.lang.Character.digit
Fix #109: Handle LabelDef for while (false) {}
Fix #104: Correct hash for boxed Byte, Short and Int
Fix #116: Correct comparison for boxed Float and Double
Fix #113: Prepend a Char to String
Implement java.lang.Character.isWhitespace
Merge pull request #120 from gzm0/bugfixes

Various bugfixes
Allow to publish releases to Bintray.
Fix #123: do not load the test framework if its class is not there.

The Scala.js-specific sbt test framework must not be loaded when
its implementing class (which is specified with the setting
`scalaJSTestFramework`) is not on the classpath. Loading it can
cause problems if another sbt test framework has to be used.
Implemented System.nanoTime
Merge pull request #107 from pkolaczk/system-nano-time

Implemented System.nanoTime
Fix #124: Add setting to opt-out setup of the Scala.js runner.

Setting `scalaJSSetupRunner in Compile` to false will now
disable the installation of the Scala.js runner for use by the
run task.
Add methods to mock JS clock to Jasmine wrapper
Fix #88: Implement AbstractPromise, add simple ExecutionContexts for JavaScript
Clean-up of settings related to the ScalaJSEnvironment.

The task prepareEnvironment has been renamed to
scalaJSEnvironment, and has been "promoted" to be part
of scalaJSConfigSettings. It is not scoped by task anymore.

Its dependencies, sources and fullClasspath, are now
scoped to scalaJSEnvironment itself instead of run or test.
Merge pull request #126 from gzm0/execution-context

Execution contexts. Enables use of Future and Promise
Remove unnecessary semicolon