Add the right constructor to Java annotations
Testcase that shows bug in ElimRepeated.
Fix elimRepeated not transforming annotations.
Add Id's to types.

Helps to track where erroneous type was created.
Fix typeAssigner ignoring existence of JavaSeqLiteral
Fix TypeErasure.sigName erasing java repeated params to Seq
Fix underlyingIfRepeated always assuming Scala repeated.
FunProtoTyped to be used when args are known to be typed
readAnnotationContents that should be able to resolve overloaded constructors.
Allow resolving overloads without inferring views.
Fix StackOveflow due to implicit resolution in readAnnotationContents
Infer if overloading resolution should trigger implicit search.

This doesn't require additional argument. Decision can be made solely from the phaseId.
Dotty typer deviation triggered in Unpickler
Fix ElimRepeated not transforming modifiers in tree.
Rename PolyType.copy method. It clashes with generated one.

See #209 for explanation.
#204 check for global uniqueness of definitions.

Check now fails after erasure.
Should become error after fixed.
Allow checking that trees and their defined symbols have modifiers in sync.
Show full name of doubly defined symbols
Initial implementation of Java scanner and parser

Ported from scalac 2.11.x branch SHA 9753f23f9362b25a9f481b11dd8d51187187882a

This is mostly a direct port, with few significant dotty-specific
changes needed. The two more significant changes are:

In dotty, the first constructor of a class is pulled out separately from
the other stats in the Template.

The keyword detection code (buildKeywordArray) was moved into Tokens so
that it can more cleanly be shared by the Scala and Java scanners.
desugar Java repeated parms into an Array instead of Seq