Get rid of all helpers except methods on maybe-hijacked classes.

This PR replaces a number of helpers (and a few methods of the library) by *intrinsics*. Intrinsics are a bit like primitives, except that they are special for the *optimizer*, not for the compiler. This allows to defer their optimization to link time, if a correct (but non-optimal) implementation can be written in Scala.js.

This is the case for System.arraycopy, which is the first primitive to be turned into an intrinsic.

We call these things intrinsics because they are very similar to JVM intrinsics: methods with a correct implementation in either pure Java or through JNI, but that the optimizing compilers know how to handle better.

Note that, since intrinsics are recognized only by the *optimizer*, the pure Scala.js implementation of all these things is tested by the runs that do not use the optimizer (Rhino run + runs with disabled optimizer).