Make run and test tasks work directly on jars.

This is implemented mostly by having RhinoBasedScalaJSEnvironment
work with a ScalaJSClasspathEntries rather than a sequence of
files to execute. This makes it both more reusable and saner.