Enhanced presentation compiler test infrastructure

* Removed unneeded .flags.
* Renamed a few methods in `InteractiveTest`.
* Force the presentation compiler to shut down after each test.
* -sourcepath in the .flags file is now relative to the test's base directory.
* Use `InteractiveReporter` in Presentation Compiler tests.
  By using the `InteractiveReporter`, compilation errors are collected in the
  compilation unit. This was necessary for testing SI-5975.
Allow attachments for symbols, just like for trees.

Removes the two global hash maps in Namers, and the one in NamesDefaults. Also fixes SI-5975.
SI-5974 make collection.convert.Wrappers serializable
Fixed the API documentation for scala.collection.MapLike.filterNot.  The previous documentation erroneously indicated that filterNot retains elements for which the supplied predicate is true when in fact the opposite is the case, as verified in the REPL.
macro-based string interpolation formatter

This commit provides a macro based string interpolation formatter.
The macro is implemented in MacroImplementations.scala.

In order to still be able to build a new STARR, the implementation
in StringContext.f is not yet changed. This will be replaced in
a later commit.
adds the sha1 files of the new starr / stringContext.f

This commit provides the new sha1 codes of the new STARR.
Moreover, it replaces the implementation of StringContext.f
to `macro ???`. The implementation is magically hardwired into
`scala.tools.reflect.MacroImplementations.macro_StringInterpolation_f`
by the new STARR.
stringinterpolation macro test files

This commit adds test files
neg: checks the error messages generated by the compiler
run: checks the macro implementation features
Fixed replacestarr to use packed libraries and also include source files.
Added opt variant to replacestarrwin
GenASM becomes default backend, 1.5 classfiles remain as default
SI-6025 fix for GenASM, GenJVM-based fix pending
removes special case for BigInteger

After rebasing, the commit 34d36108bf is in the history, therefore
a patch in my code can be removed as an implicit conversion from
BigInteger to BigInt was added in commit 34d36108bf.
The tests cases test this case and still pass.
SI-6036 yet again makes sense of magic symbols
Knocking off a few catch _ => warnings.
Implicits to encourage more Name-dropping.

This creates implicits in cakes across the land from:

  String => TermName
  String => TypeName

And also from:

  Name => NameOps[Name]           // lower priority
  TermName => NameOps[TermName]
  TypeName => NameOps[TypeName]

What this is all about, using "drop" as a motivating example,
is that these should all work:

  "abc" drop 1                      // "bc": String
  ("abc": TermName) drop 1          // "bc": TermName
  ("abc": TypeName) drop 1          // "bc": TypeName
  (("abc": TypeName): Name) drop 1  // "bc": Name

But this should not:

  ("bc": Name)  // ambiguity error

This requires drop not being directly on Name; peer implicits
from String => TermName and String => TypeName; implicit
classes to install drop on TermName and TypeName; and a lower
priority implicit class to allow ops on Names.

Review by @xeno.by .
raise compile time error about impending VerifyError due to unsorted lookupswitch (SI-6011)
Merge pull request #844 from paulp/topic/stop-admonishing-me

Knocking off a few catch _ => warnings.
SI-6042 Improve type selection from volatile type error

 - Display the type of the typed qualifier (qual1), to avoid the
   message "Illegal type selection from volatile type null".
 - Show the upper bound, which is used to calculate the volatility.
scalac ant task now supports all GenASM targets
Merge pull request #829 from ConnorDoyle/master

Fixed an error in the documentation for MapLike