chrome.experimental.downloads.onCreated, onErased
Manually tested. No apitest yet because that's in 7647028. If this CL goes in before that one, then I'll add tests for these events in that CL, otherwise in this CL at that time.

Who owns what:
Randy: DownloadItem
Mihai: chrome/browser/extensions/...

Randy, Asanka, I also appreciate having your eyes on extensions/... if you have the time to make sure that I'm using the downloads/ interfaces correctly and matching the doc.

Review URL: http://codereview.chromium.org/7645029

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@101121 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/chrome/browser/extensions/extension_service.cc b/chrome/browser/extensions/extension_service.cc
index 2cd6d79a..60a864fa 100644
--- a/chrome/browser/extensions/extension_service.cc
+++ b/chrome/browser/extensions/extension_service.cc
@@ -32,6 +32,7 @@
 #include "chrome/browser/extensions/extension_browser_event_router.h"
 #include "chrome/browser/extensions/extension_cookies_api.h"
 #include "chrome/browser/extensions/extension_data_deleter.h"
+#include "chrome/browser/extensions/extension_downloads_api.h"
 #include "chrome/browser/extensions/extension_error_reporter.h"
 #include "chrome/browser/extensions/extension_history_api.h"
 #include "chrome/browser/extensions/extension_host.h"
@@ -700,6 +701,7 @@
   if (event_routers_initialized_)
     return;
 
+  downloads_event_router_.reset(new ExtensionDownloadsEventRouter(profile_));
   history_event_router_.reset(new ExtensionHistoryEventRouter());
   history_event_router_->ObserveProfile(profile_);
   ExtensionAccessibilityEventRouter::GetInstance()->ObserveProfile(profile_);