Bug 858969 - Refactor dynamic toolbar so page is offset and not overlapped. r=kats,nrc

Refactor the dynamic toolbar code so that the ownership of various properties
is clearer, and the page is offset by the toolbar instead of being overlapped.
This fixes problems with the scroll origin of the page not corresponding to
the visible origin on the screen.
Bug 844178 - Make RecomputePosition adjust the CB size as ViewportFrame::Reflow does.  r=tn
bug 549697 - add click-to-play plugin UI to the addon manager r=unfocused r=jaws

--HG--
rename : browser/base/content/test/test_bug787619.html => browser/base/content/test/browser_bug787619.js
rename : browser/base/content/test/test_bug787619.html => browser/base/content/test/plugin_bug787619.html
Bug 864709 - Part 1: Hold a strong reference to the AudioNodeStream before calling ProduceOutput on it; r=padenot
Bug 864709 - Part 2: Protect accesses to AudioNodeEngine::mNode using a lock; r=padenot
Bug 864858 - Hold a reference to utterance before nsSpeechTask goes away in DispatchEndImpl() r=smaug