Refactoring of Namer/Typer interface (under -Yxnamer)

1. Add lateDefs.
2. Changing synthetics handling to lateDefs, removing a bug pile of manure in typedStats on the way.
3. Attempt to remove transformed and bring it under the lateDefs scheme.
Foiled so far because specialization/duplicators and run-time compilation in toolboxes do not work.
Need to find out what's going on here.
New scheme enabled by default. Works except for the 4 following test cases. Pressing ahead with more changes for now.

/Users/odersky/workspace/scala/test/files/neg/specification-scopes [FAILED]
/Users/odersky/workspace/scala/test/files/run/t5276_2a.scala [FAILED]
/Users/odersky/workspace/scala/test/files/run/t5276_2b.scala [FAILED]
/Users/odersky/workspace/scala/test/files/presentation/callcc-interpreter [FAILED]
Taking off the training wheels (xNamer). Towards a more general scheme based on tree transformations.
First stab at a namer redesign. The new stuff is in DerivedDefs, LateDefinitions, and Typers#typedStats.
Some  cleanup in docs.
meta diff before and after rebase on master