Enable namespaces for Super Dev Mode (take 2)

Change-Id: I43fc71cb28885c445a89c5cc2882d1ea774754ac
Added monolithic/separate branching to JavaToJavaScriptCompiler.

Separate compilation branches in JavaToJavaScriptCompiler takes care to
avoid most optimization passes, the Pruner, and StringInterner. It also
triggers generators prior to UnifyAst and drives them differently.

Added Generator triggering and runtime rebind rule creation functions
to Rule classes, so that they can be driven by the new non-monolithic
JavaToJavaScriptCompiler pathway.

Added a RuleBaseline to be the creator of fallback runtime rebind rules.

The monolithic flag is stored in CompilerContext and defaults to true so
that it is already correct for most compile entry points and so its
value is easy to set even if the compiler entry point in question does
not have a ModuleDef instance.

Change-Id: Iae7ddeef5c2bc5f2c919630bbb5acf219e5aaf27
Review-Link: https://gwt-review.googlesource.com/#/c/6156/
Merge remote-tracking branch 'upstream/master'