SI-8266 Amend advice for deprecated octal 042

Improve the advice for `f"\042"` to read:

```
use ${'"'} or a triple-quoted literal """with embedded " or \u0022""" instead.
```

as per the discussion on SI-6476.

Knuth says that Charles XII came close to introducing octal arithmetic to Sweden,
and Wikipedia doesn't deny it.

I imagine an alternative history in which octal literals are deprecated in Scala
but required by legislation in Akka. #octal-fan-fiction
SI-8386 fixed
SI-8265 Restore 2.10 variance behavior under -Xsource:2.10

Issue deprecation warning under -Xsource:2.10 so time
travelers can have an authentic deprecation experience before
finding that their unsound code no longer compiles in 2.11.
The relevant ticket to the soundness issue is SI-6566.
Remove "will not terminate" from toStream doc

It's at least not always true:

    scala> val example = Iterator.continually(1).toStream
    example: scala.collection.immutable.Stream[Int] = Stream(1, ?)
SI-8403 Fix regression in name binding with imports in templates

Regressed in dbd8457 which changed `Context#make` to automatically
include the imports from the given `Tree` if it was an `Import`
tree, rather than requiring callers to call `makeNewImport`.

However, this turns out to double up the imports for the "inner" namer
of a template that starts with imports. The inner namer has a new
scope, but the same owner and tree as its parent.

This commit detects this case by seeing if the `Import` tree used
to consruct the child context is the same as the parent context.
If that is the case, we don't augment `Context#imports`.
Minor fixes in test. The equals method always returned true.

This commit ensures that the classes we use to test HashMaps and
HashSets in t6196 and t6200 have proper equals and hashCode
methods. (The old equals method returned always true and therefore
hashCode violated its contract).
SI-8086 follow-up that fixes the problem with `setter`

This is a super-low risk follow-up for 47dba05 that fixes the same
problem with a neighboring method.
Printers tests uncommented
Merge pull request #3625 from retronym/ticket/8403

SI-8403 Fix regression in name binding with imports in templates
Merge pull request #3623 from paulp/pr/source-210

SI-8402 Restore 2.10 variance behavior under -Xsource:2.10
Merge pull request #3628 from gzm0/test-fix

Minor fixes in test. The equals method always returned true.
Merge pull request #3629 from xeno-by/topic/setter-conflict

SI-8086 follow-up that fixes the problem with `setter`
Merge pull request #3624 from puffnfresh/patch-1

Remove "will not terminate" from toStream doc
Merge pull request #3598 from som-snytt/issue/8266-amend-advice

SI-8266 Amend advice for deprecated octal 042
SI-8368 respect user-supplied scala.usejavacp

Now also works  when the option is -Dscala.usejavacp=false...
Merge pull request #3617 from VladimirNik/typedTreesPrinter-2.11.0-SI-8386

SI-8386 showCode fails to pretty print application to assign
SI-4492 More informative error when class not found on classpath

Position the error based on Select tree that failed to type check,
presumably due to an underlying MissingRequirementError, which has no position.

There are lots of other ways we could rewrap a MRE and supplement position info,
but that remains TODO. Jason's review comment is recorded in the code.

Also try to detect the case of a missing module and provide some advice,
as well as linking to the forthcoming 2.11 guide at
http://docs.scala-lang.org/overviews/core/scala-2.11.html.
Merge pull request #3630 from adriaanm/t8368

SI-8368 respect user-supplied scala.usejavacp
Merge pull request #3631 from adriaanm/t4492

SI-4492 More informative error when class not found on classpath
SI-8425 don't create double-dollar names in c.freshName

If we append a dollar to a user-provided prefix that ends in a dollar,
we create a potential for confusion for backend phases. That's why
this commit prevents such situations from happening.