Backport Avoid crashing for classpath elements that do not exists on the file system.

Added DummyVersion constant value, exists() to detect file that does not exists and getDummyVersion to provide a string version for a dummy file.
Implemented DummyVersion and isDummy in physical and node file systems.
Added simple ClasspathElementsTraverser tests using the PhysicalFileSystem.

Backport: Add `handleTopLvlJS` to ClasspathElementsTraverserTest.TestElementTraverser

(cherry picked from commit 76df98df86465cf7d1663226b3d6d1c20c33d006)

Conflicts:

	tools/shared/src/main/scala/scala/scalajs/tools/classpath/builder/ClasspathElementsTraverser.scala
Backport Fix a few typos in scala.scalajs.js package object docs

(cherry picked from commit 6689fef40aa84062bcb37da652cca88f07e04404)
Backport Fix #1191: Reset caseaccessor flag on export forwarders

(cherry picked from commit 2310223109bf2c81c255c82b32b94ac435c9acb2)
Backport Fix #1171: Split: Sometimes remove leading empty match

The conditions were determined experimentally since the JavaDoc is
note precise enough.

(cherry picked from commit cba58ff2c58ce916ebd4df942612f8538ea6bb70)
Backport Fix #364 for good: remove magical Rhino top-level package objects.

Instead of hard-coding a list of known problematic top-level
package names, we detect what needs to be removed by listing
the properties in the Packages object.

Backport: In 0.5.x, the LiveConnect classes were removed before
loading env.js (unlike 0.6.x). The backport leaves these steps in the
order they were in 0.5.x.

(cherry picked from commit 856029644aa01c16b2df0c7e696615e956b55eec)

Conflicts:

	sbt-plugin/src/main/scala/scala/scalajs/sbtplugin/env/rhino/RhinoJSEnv.scala
Backport Add replace and deleteCharAt methods to StringBuilder and StringBuffer

(cherry picked from commit 20973bc986ccaf78082e00dd0fd7380a9c630cac)
Backport Use a Traverser in JSASTTest instead of a Transformer.

(cherry picked from commit 4752db29e17d5960b18b4aab73c34f83b01a486d)
Backport Using a Transformer in scalajsp is overkill.

It only needs to transform the top-level node, so a simple
function is enough.

(cherry picked from commit 47408a5f65e1243dda35449be5117bce102ef429)

Conflicts:

	cli/src/main/scala/scala/scalajs/cli/Scalajsp.scala
Backport Fix #1206: Update to sbt 0.13.6

Also fix the sbt version for the sbt-plugin-test build.

(cherry picked from commit 11c29f9c138a700657258617e3ac233a1fa9bbe7)