SI-8925, SI-7407 test cases, fixed in new backend

Given that the issues are old (2.10) and we move to the new backend
in 2.12, I don't plan to fix them in GenASM.

The test case for 7407 existed already, this commit just adds
`-Yopt:l:none` to the flags to make no dead code is eliminated.
SI-6502 Reenables loading jars into the running REPL (regression in 2.10)

Fixes SI-6502, reenables loading jars into the running REPL
(regression in 2.10). This PR allows adding a jar to the compile
and runtime classpaths without resetting the REPL state (crucial
for Spark SPARK-3257).

This follows the lead taken by @som-snytt in PR #3986, which
differentiates two jar-loading behaviors (muddled by cp):

  - adding jars and replaying REPL expressions (using replay)
  - adding jars without resetting the REPL (deprecated cp,
    introduced require) This PR implements require (left
    unimplemented in #3986)

This PR is a simplification of a similar approach taken by
@gkossakowski in #3884. In this attempt, we check first to make
sure that a jar is only added if it only contains new
classes/traits/objects, otherwise we emit an error. This differs
from the old invalidation approach which also tracked deleted
classpath entries.
SI-6502 Addressing review comments
SI-6502 Addresses @som-snytt's feedback
SI-6502 Addresses comments by @som-snytt
Adds tests that programatically generate jars
Addresses review comments
SI-6502 Moving methods concerned with the state of Global from IMain to Global
SI-6502 Refactorings suggested by review
- Moves mergeUrlsIntoClassPath from Global into ClassPath
- Revises and documents AbstractFile.getURL
SI-8977 remove duplicate decoder.properties from scalap

All .properties files in sources folder are already included in the
packed jar (see line 1028), so there is no need to add it again.
Merge pull request #4129 from gourlaysama/wip/t8977-scalap-decoder-properties

SI-8977 remove duplicate decoder.properties from scalap
Merge pull request #4068 from lrytz/t8925

SI-8925, SI-7407 test cases, fixed in new backend
Merge pull request #4051 from heathermiller/repl-cp-fix2

SI-6502 Reenables loading jars into the running REPL (regression in 2.10)