SI-6803: do not use java.net.URI, even more so incorrectly.
SI-6928, VerifyError with self reference to super.

A bug in typers mishandled varargs. We should get more
aggressive about eliminating all the ad hoc parameter/argument
handling code spread everywhere. For varargs especially:
any code which tries to make an adjustment based on a
repeated parameter is more likely to be wrong than right.
In aggregate these reinventions are a huge source of bugs.
Merge pull request #1787 from vigdorchik/si_6803

SI-6803: do not use java.net.URI, even more so incorrectly.
Merge pull request #1863 from retronym/ticket/6641-2.10.x

SI-6641 Deprecate SwingWorker
Merge pull request #1853 from paulp/issue/6928

SI-6928, VerifyError with self reference to super.
Merge pull request #1869 from retronym/backport/1826

Backport of SI-6846.
SI-6951 Refine ClassTag based unapply after inference.

Before, we were getting:

    typed ClassTag.apply[T#Branch](classOf[Tree$Branch]).unapply(<unapply-selector>) <unapply> (Matcher.unapply[Oak.type](<unapply-selector>) <unapply> ((branch @ _))): T#Branch

This is problematic for two reasons:

  - We don't actually need to use a class tag in
    pattern matching, because after inference the
    substituted formal type of the unapply method
    is a concrete type, Oak.Branch.
  - The class tag check delivers a T#Branch, which
    doesn't line up with the required Oak.Branch
    required by unapply.

Now, we use the inferred type argument `Oak.type` to
double check whether the type is in fact uncheckable,
and retain the inferred type.

In addition, we only consider class tags available
through normal implcits, we disable materialization.
See the code comments for an example of an uncheckable
type that for which a classtag can be materialized.