Merge remote-tracking branch 'upstream/master'
Fixes unnecessary compilation of permutations in GWTTestCase

The existing mechanism to restrict permutation on GWTTestCase doesn't
fully work and permutation restriction was only effective if there are
multiple test modules running in the same process and only for the
proceeding modules; not the original module.
This means in most cases this, we have been missing the opportunity
to reduce the compilation time in GWTTestCase.

In the patch, I did a refactoring so that RunStyle itself can determine
the active user agents so that we can actually restrict the permutation
for all test cases. The preliminary result are looking pretty good and
I have seen improvements like 2x in some cases.

Although this is quite exciting, keep in mind only tests running in web
mode will immediately benefit from these improvements. However it will
be even more useful as we drop support for the dev-mode.

Change-Id: Ic9e142de9adccf8f9ba106b953dc995de80b31c8
Review-Link: https://gwt-review.googlesource.com/#/c/6362/
Fix TypeError in IE8 due to inconsistencies in valueOf.

Apparently some objects in IE8 lack .valueOf. And also
.valueOf is unsafe as any JavaScriptObject might override
it.

Current choice is supported by the experiment at
http://jsperf.com/isastring

Change-Id: I07a66d1808c3ebbf90ce437f7a972f7c0b3c3402
Merge branch 'master' of https://github.com/andrestesti/gwt-rebindingmethods
Merge remote-tracking branch 'upstream/master'