SI-6736 Range.contains is wrong

Removed once-used private method that was calculating ranges in error and corrected the contains method (plus improved performance).
Reasonable Range operations consistently work when overfull.

Operations are reasonable when they don't require indexing or conversion into a collection.  These include head, tail, init, last, drop, take, dropWhile, takeWhile, dropRight, takeRight, span.

Tests added also to verify the new behavior.
SI-261 private vals in traits depend on composition order

Fix for SI-7475 in #3440 took care of this one.

I nixed the old (redundant) test cases and replaced by a single run/ test,
which didn't compile until.
SI-8263 Avoid SOE in logicallyEnclosingMember

We've started calling this method during higher-kinded subtyping
to ensure that variances of higher order type params in overriding
as soundly aligned.

Turns out that running this over the expansion of the SBT task
macro leads to a SOE due to a corrupt owner chain.

I've fixed that in SBT (https://github.com/sbt/sbt/pull/1113),
but we ought not crash like this.

This commit considers NoSymbol to be its own enclosing member and
logs a -Xdev warning. This is analagous to the handling of
`NoSymbol.owner`.
Merge pull request #3512 from adriaanm/t261

 private vals in traits depend on composition order
A test case for a name binding progression

I noticed the change when adapting Slick to work with
Scala 2.11 in `AbstractSourceCodeGenerator.scala`.
The behaviour changed in a70c8219.

This commit locks down the new, correct behaviour with a test.
Merge pull request #3437 from Ichoran/issue/6736

SI-6736 Range.contains is wrong
SI-8177 co-evolve more than just RefinedTypes

`asSeenFrom` produced a typeref of the shape `T'#A` where `A` referred to a symbol
defined in a `T` of times past.

More precisely, the `TypeRef` case of `TypeMap`'s `mapOver` correctly modified a prefix
from having an underlying type of `{ type A = AIn }` to `{ type A = Int }`,
with a new symbol for `A` (now with info `Int`), but the symbol in the outer
`TypeRef` wasn't co-evolved (so it still referred to the `A` in `{ type A = AIn }`
underlying the old prefix).

`coEvolveSym` used to only look at prefixes that were directly `RefinedType`s,
but this bug shows they could also be `SingleType`s with an underlying `RefinedType`.
Merge pull request #3506 from retronym/topic/logically-no-symbol

 Avoid SOE in logicallyEnclosingMember
Merge pull request #3515 from retronym/topic/stable-ident-ambiguous

A test case for a name binding progression
SI-8177 refine embeddedSymbols

We look for any prefix that has a refinement class for a type symbol.
This includes ThisTypes, which were not considered before.

pos/t8177g.scala, neg/t0764*scala now compile, as they should

Additional test cases contributed by Jason & Paul.
Merge pull request #3516 from adriaanm/t8177

 SI-8177 co-evolve more than just RefinedTypes