bug 1077595 - Use DataStoreChangeEvents to update Download API Manager c...

...ache up to date. Move tracking of active downloads into StatusBar instead of DownloadNotifications. r=crdlc,mhenretty
Using timeout is potentially making the test unstable.  It would be easier if `DownloadApiManager` returns a promise, then we could use code like:
```
DownloadApiManager.init().then(function() {
 // assertions
}).then(done, done);
```