Don't clobber the thread actor global on reload for pages that contain child frames (bug 962632); r=fitzgen
Make the debugger frontend cope with an already connected target (bug 933212); r=jryans,fitzgen

* Made the DebuggerClient, which is actually the RootActor front, not consider one of the attached child fronts as "active". Since a single DebuggerClient (or RootFront) is kept around for the App Manager's lifetime, it makes sense to move the notion of "active" tab to the toolbox's target. As each toolbox gets destroyed, the fronts should be detaching from their actors (if they are stateful) so that the app is no longer in a debugging state. Debugging a new app (or reconnecting to a previous one) will create new fronts anyway.
* Slightly refactored the TabClient, ThreadClient, SourceClient and TracerClient towards a protocol.js-based architecture, by adding parent-child references and lifecycle management. Now a tab-scoped thread actor for instance has the tab as its parent, while a global-scoped thread actor (chrome debugger) has the DebuggerCLient (RootFront) as its parent. This lets parents reference their children, so that caching in the target object can work. It also allowed me to move some methods from the DebuggerClient to the actual front that should be responsible, like reconfigureTab, reconfigureThread and attachThread. These methods now use DebuggerClient.requester, too.
* Added some error handling in the debugger client requester around "before" and "after" callbacks, which exposed some errors in tests that are now fixed.
* Fixed the state handling in the thread actor so that merely detaching from a thread doesn't put it in the exited state. This is the part that what was necessary for Firebug's use case.
* Properly loading tracer and webgl actors now on b2g.
merge m-c to fx-team
Bug 958071 - PopupNotification consumers should have a way to replace the "Not Now" item, r=dolske.
Bug 885796 - WebRTC doesn't have UI to stop sharing camera nor microphone, r=dolske, ui-r=Boriss.
Bug 962494 - Remove Iterator() usage from SessionStore code r=yoric
Bug 957421 - Keep FxA pref names consistent r=markh,rnewman,nalexander
Bug 959548 - Determine what identity manager to use as sync is initialized. r=ckarlof,rnewman
[Australis] Bug 878546: refresh the styling of sub-views. r=Gijs
Bug 911916 - Search set to identifier under cursor if no text selected. r=vp
Bug 960966 - Remove TelemetryPing.js from telemetry. r=Yoric, r=BenWa
Bug 961177 - Given argument incorrect for alertDownloadSave2. r=mbrubeck
Bug 961560 - Use a SUMO redirect for the Learn More URL in the missing plugin error message. r=margaret
Merge m-c to fx-team.
Bug 962085 - Font-inspector "show all fonts" button selects the <body> node remotely; r=paul
[Australis] Bug 963092: update help menu button styling. r=jaws
Bug 940286 [Australis] - Set menu active style on keyboard navigation [r=jaws]
Bug 930160 - Discard item clicks on top sites after the fragment gets destroyed (r=mfinkle)
Bug 963036 - Store default and disabled flags as JSON booleans (r=margaret)
Bug 961223 - Character encoding in app bar: implement it or remove it from Options.r=azasypkin