Bug 860941 - Use DialogValueHolder for returnValue. r=jst

The spec currently has returnValue as a DOMString, but this doesn't match
reality given my testing. I filed [1] to fix it.

Note that nsGlobalModalWindow is already set up to CC mReturnValue. Since
we're swapping in another CC-ed container class, we don't need to make any
changes here.

[1] https://www.w3.org/Bugs/Public/show_bug.cgi?id=21771
Bug 860941 - Stop clearing return values on navigation. r=jst

Since this stuff is a property on the browsing context, this only makes sense
as a security check. But now that we're using a DialogValueHolder, the origin
checks are taken care of. So we can kill this off.
Bug 860941 - Tests. r=jst

We augment the existing showModalDialog tests with test coverage for
dialogArguments and returnValue.
Bug 860941 - Remove assertion annotations for the now-removed mArguments assertion. r=jst
Bug 872772 - Fix up lost Xray waivers when wrapping into the content compartment. r=gabor
Bug 872772 - Tests. r=gabor
Bug 860957 - Support for invoking non-recursive targets during partial tree builds; r=glandium
Bug 848530 - Check for moz.build traversal at top of build; r=glandium

One of the first actions an invoked Makefile now does is check to see if
*any* moz.build file or Makefile.in is out of date. If so, config.status
is executed to rebuild the build backend.

Since we always perform this check as part of a build, we no longer need
special handling for out of date moz.build files during traversals. This
results in the removal of a significant amount of code!

Another upside of the change is that if a moz.build file is modified
during building, we don't (potentially) modify the build backend from
under the in-progress build. Thus the only race condition that remains
is if a moz.build is mutated during moz.build reading. This window (a
few seconds) is significantly shorter than the time of a full build
(minutes).

This patch should also enable us to remove empty Makefile.in files
without requiring a clobber.
Bug 871857 - Only expose the Shell function getSelfHostedValue if MOZ_SELFHOSTEDJS is set. r=jwalden

--HG--
extra : rebase_source : d5eb3018101380240759736a6f0eadd4ed453ca2
Bug 649570 - |delete window.NaN| should be a TypeError.  This got fixed...sometime.  Add a a test so we don't regress this in the future.  r=sparky

--HG--
extra : rebase_source : 93ddcd629a445afc374b3535ad48af9067e08ff3
Bug 872853 - Move StringToNumberType into jsnum.cpp, now that it's not used anywhere else, and remove jsnuminlines.h.  r=evilpie

--HG--
extra : rebase_source : 000e1257af9987c87893efe9c76b9f3d42e9bbe4
Bug 872853 - Make +"0x" evaluate to NaN.  r=evilpie

--HG--
extra : rebase_source : ec46e8224922729a7f8ec1bb023f4e6733106c7c
Bug 869536 - Make Marionette use its own tab on Firefox, r=mdas
Merge m-c to inbound.
Bug 864206 - Use dom::Touch instead of nsIDOMTouch where possible r=Ms2ger
Bug 732043 - part 1 - add mfbt/Atomics.h; r=Waldo; original-author=jcranmer
Backed out 2 changesets (bug 871315) because different compilers have different standards on what is and is not C++

Backed out changeset d0d2e13e8b83 (bug 871315)
Backed out changeset be3976bd2d57 (bug 871315)

Landed on a CLOSED TREE
Bug 866964 - Upgrade zlib to version 1.2.8. r=joe
Bug 871363 - Rename nsBrowserGlue's _onProfileStartup to _finalUIStartup to clarify when it actually is called. r=dao
Bug 871245 - Don't hardcode "Firefox" in gclicommands.properties. r=dcamp