Fix SI-7224.

Don't focus positions assigned to the TypeTree of a parent of a Template
when the parent exists in the source. A focused position (instance
of `OffsetPosition`) makes it invisible to the presentation compiler
when it looks for the innermost enclosing tree of a given position
(breaking hyperlinking, for example).
Merge pull request #2212 from dragos/fix/SI-7224

Fix SI-7224.
SI-5710 has fixed itself

My job here is only to submit tests.
reifier is now aware of SI-7235

SI-7235 is caused by a long-standing todo in typedRefinement, which leads
to originals of compound type trees swallowing their stats.

I'm not sure how exactly to fix SI-7235, but what I am sure about is that
we shouldn't silently discard stats during reification. This patch
introduces a new implementation restrictions, which now reports that
reify of compound type trees with non-empty stats isn't going to work.
SI-7234 Make named args play nice with dep. method types

Some care is needed to avoid interaction with constant
types (e.g pos/z1730.scala) and with existentials
(e.g. t3507-old.scala).
SI-7226 Fix inference regression caused by TypeVar equality.

TypeVars, being mutable creatures, mustn't have structural
equality/hashing, otherwise TypeRefs that differ only by
having distinct TypeVars as components get wrongly uniqued
together.

The reported bug showed the disaterous consequences: constraints
from the `C?[Int]` in the return type applied to the `?C[?A]` in
the parameter list.

This commit overrides `equals` and `hashCode` in `TypeVar`
to use reference equality. An alternative fix would be to drop
the `case`-ness of the class, as was the case before 0cde930b
when this regressed.
SI-7328 Bail out of names/defaults if args are error typed

To avoid a crasher later on with a null type inside a
sequence argument.
a typo corrected
IntellIiJ module definitions for scaladoc, interactive and continuations-*.
Add eclipse projects for interactive, scaladoc.
SI-6601 Close access loophole for value class constructors

ExtensionMethods marks private constructors of value classes as
notPRIVATE before pickling. When the pickler reads the flags of this
symbol, the anti-shift mechanism folds this into the regular PRIVATE
flag, so the class is pickled as though it was public all along. A
seprately compiled client can then call this constructor.

To remedy this, we must:

 - pickle `rawFlags`, rather than `flags`. This is symmetric with
   unpickling, which sets `rawFlags` with the value it reads.
 - Add `notPRIVATE` to the flagset `PickledFlags`.

We cannot make this change in a minor version, as the pickler
and unpickler must agree on `PickledFlags`.

I believe that this won't change the size of pickled flags
for the majority of symbols (ie, those without the notPRIVATE flag)
due to the variable length encoding in `writeLongNat`.

This also improves the situation for SI-6608. Reflection and
scalap (and, by extension, IntelliJ), no longer will see
as public methods that have had their access widened in
SuperAccessors (which is done selectively to support inlining
under separate compilation.)
Modularized the repl.

Following in the footsteps of scaladoc and interactive.
The interpreter sources move into src/repl, and are given
a separate build target. As with the others, at present
they are still packaged into scala-compiler.jar.

A summary of changes:

 - repl requires use of ReplGlobal (this was already implied)
 - macro code's repl-specific classloader hack pulled into overridable
   method and overridden in ReplGlobal
 - removed -Ygen-javap option to eliminate backend's dependency on javap
 - removed -Yrepl-debug option (can still be enabled with -Dscala.repl.debug)
 - pushed javap code into src/repl so javax.tools dependency can bee
   weakened to the repl only
 - removed some "show pickled" related code which hasn't worked right
   in a while and isn't the right way to do it anymore anyway. Will
   return to fix showPickled and provide it with some tests.
Close after slurping (fixes SI-7244)

Since slurp by definition is the noise made by the straw when
the cup is empty and all milk shake is consumed, we can safely
close after slurping.

Use case was deleting a test artifact on Windows.
Merge pull request #2232 from paulp/pr/modularize-repl

Modularized the repl.
Merge pull request #2228 from retronym/ticket/7226

SI-7226 Fix inference regression caused by TypeVar equality
Merge pull request #2229 from srinivasreddy/master

A small typo corrected
SI-874 reflect.io improvements
SI-874 actual JSR-223 implementation
Merge pull request #2237 from som-snytt/topic/slurpee

Close after slurping (fixes SI-7244)
Merge pull request #2231 from retronym/topic/ide-config

Topic/ide config