Update Guava to 16.0.1 for CDI compatibility

Bug: issue 8590
Change-Id: Ic12978ffdfe549d2100c0c6948b1864fb051200b
Let AbstractCollection.addAll use common style according to other Collection implementations.

Change-Id: I46b97e5adfc3a1a9485a45de2ded3826f52ea382
Fix AnimationSchedulerImplStandard wrt high-res timestamps

In Ie00d1020285ce41c571054709bbe19aeef348975, AnimationCallback started
receiving high-res timestamps as arguments, and this broke Animation.
This change reverts the semantic change, always passing the current
timestamp (from Epoch) to AnimationCallback.

Bug: issue 8570
Change-Id: I590cd0ec6b57c5f41e30234a101331a109b42cb4
Define trampolines at actual JSO class rather than in JavaScriptObject.

Trampoline methods where declared in JavaScriptObject instead of the
actual JSO class. In modular compilation JavaScriptObject code will
only be generated in the defining module, hence separate compilation
would need to be aware to regenerate JavaScriptObject.

Also removed some redundant generated code in the String specific
trampolines.

In the current scheme still JSOs need to be declared in the SAME
module as the interfaces they implement when compiling modularly.

TODO:
  - Lift the above restriction.

Change-Id: Id563afe7650b099f6cfafbb814e24dac1ed2dbc4
Split longest running test suites to reduce testing time.

Change-Id: I56e24162668e7d7c4d8a4d9cd36807c4c1259d1c
Use gzip best compression in PrecompressLinker.

(Free) reduction of 0.5% for compressed .js files.

Change-Id: Ic0064d95b10f5f42da1b79b7684b13549e804f39
Small refactoring of CastNormalizer.

CastNormalizer was also fixing type coercions. There were now pulled into
their own separate pass and added missing unit tests.

Change-Id: I147d10fe3c7b38c25a9b4d2c6feef30908c796ca
Add console onto window property for D8Linker

Change-Id: I4186ce8fbcad3062807e2e4425b54989d71bada4
Strengthen SuperDevMode test in selection script

Selection script used sessionStorage without checking first whether it's
supported and enabled (e.g. IE8 doesn't support it with local files).

Bug: issue 8587
Change-Id: I5d5b9312d9a8c5db87924ea943e2230cda1e5fac
Fixes most '$' loss in source name construction.

Previously the source name of a class was frequently synthesized by
(among other things) turning '$' into '.' in internal or binary name.
But this transformation was not safe since source names can legally
contain '$'.

Changed JdtCompiler to gather the original and correct source name
for each class and store it in each CompiledClass instance.

Changed most source name access to use this newly available source.

Deprecated BinaryName.toSourceName() and InternalName.toSourceName().

Addresses code.google.com/p/google-web-toolkit/issues/detail?id=6799

Change-Id: I16bfaed1a3467f6187b4ca80dcb7b95049e65b50
Review-Link: https://gwt-review.googlesource.com/#/c/6470/
Restore binary compatibility with the original version of ArtifactSet

Change-Id: Ic82565885037a34f5f0907ee883ea93ff70dd8c7
Review-Link: https://gwt-review.googlesource.com/#/c/6501/
Make xsiframe the default linker

Update samples to remove any explicit setting of xsiframe
and devModeRedirectEnabled.

Bug: issue 8578
Change-Id: I5d8bf701783be2aaf4451ff840d307851eebf2e7
Emulate Collections.newSetFromMap()

Bug: issue 8596
Change-Id: I300a4ea3ef85975d042d6bdeb1c89c85e616fadd
Fix PriorityQueue.comparator contract.

Method comparator() should return null
if queue is sorted in natural ordering.

Change-Id: I436dd0dec08c87ca77e3afb8010a268f6b3ecd19
Exposes full super hierarchy per type in JTypeOracle.

Upcoming library compilation changes need to create castmaps that
document all possible casts, not just the ones visible in the code of
the current library. This depends on knowing the full super hierarchy
of a given type, thus this change.

Change-Id: I0f2b728b854c9b5eaeffd275ea89406d087b3a4d
Replace "new Function" with "function() {}" in XMLHttpRequest.java,

new Function() was used due to ie6 which is not supported anymore.
Function literal should be several orders of magnitude faster.
It also has better CSP support.  See
https://code.google.com/p/google-web-toolkit/issues/detail?id=8207

Change-Id: I49e8fcce398674f95b6ed6a587397191f883f3ea
Review-Link: https://gwt-review.googlesource.com/#/c/6531/
Allow to use globally unique strings as type ids.

Stable global id are a necessity for cross module reference when
global information is not available (e.g. separate compilation).

Although not practically necessary, TypeIds in intrinsic are
represented as JavaScriptObjects to denote that the type is
not necessarily int. Leaving them as ints would have been also
functional as AST in the stage where this pass is applied does
not need to be type correct Java.

Change-Id: I05dc27cfe05be1a8367924e4594ddc7619b1ab52
merge with master