Bug 960864 - Implement the _initialized flag instead of _addedObserver and the half-broken _destroyed. r=gavin

--HG--
extra : rebase_source : 396b859dc30dc91bce27c6b576a1814f5d65d7e5