Reworked erasure denotation transformer

Now works for all combinations of

    java/scala
    sue ErasedValueClass/go directly to underlying type
    constructors/others
    wildcards ok/not

Signatures had to be refined as well, because the signature depends
on whether a type comes form Java or Scala (handling of intersections
is different).

Also, replaced splitArray method in TypeApplication by extractors for
single- and multi-dimensional array types in definitions.
Transform for normalizing type tests and type casts

To be executed before erasure.
More flexible () applications.

New method ensureApplied which will add a () parameter list if
a tree's widened type takes parameters.

Used in numericConversion, so that we are independent whether we
run before () insertion or after. With that change TypeTestCasts can stay enabled for
the whole build.

Conflicts:
	src/dotty/tools/dotc/ast/tpd.scala
Fix error message for missing parameters
Summary printing

Added general way to produce summaries when shwowing trees or types.
Summaries have limited, configrable recusion depth.
fix showSummary
Erasure phase PoC

Still missing: bridge method generation, signatures.

Other changes

 - Turned around Checking and NoChecking. Checking is the default, NoChecking
   disables it.

 - Refactored Typer#typed to expose typedNamed, so that it can be overridden in
   erasure.

 - Made logging more forgiving wrt off-buy-one phase errors.

Conflicts:
	src/dotty/tools/dotc/typer/Typer.scala
Enable squashed phases by default.

Squash was accidenbtally turned off before. Is now on again.
Take phase control settings into account

Run now interprets correctly

     -YstopBefore
     -YstopAfter
     -Yskip
     -Tprint

phase settings. For now, we stop by default before
erasure, until erasure is fully debugged.
Fixes to erasure

Various fixes to the tree transformer.

In the denotation transformer we now keep self types around because otherwise
sourceModule would stop to work.

Conflicts:
   src/dotty/tools/dotc/core/transform/Erasure.scala
Merge pull request #101 from dotty-staging/transform/erasure

Transform/erasure