Hook up DownloadServiceImpl to content

Hook up the DownloadService factory method to build the proper internals
(e.g. the proper content-specific components).  As a part of this, the
following changes are made:
- Update components/download/content to content/factory and
content/internal.
- Migrate the DownloadService::Create implementation to
components/download/content/factory.
- Update DownloadServiceImpl unit tests now that it is more fleshed out.

BUG=722705

Change-Id: I408ecef822ec48d7bbbba0c36aa3f0a553b484be
Reviewed-on: https://chromium-review.googlesource.com/520567
Commit-Queue: David Trainor <[email protected]>
Reviewed-by: Tommy Nyquist <[email protected]>
Reviewed-by: Shakti Sahu <[email protected]>
Reviewed-by: Xing Liu <[email protected]>
Cr-Commit-Position: refs/heads/master@{#477606}
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
index 382cf510..4faff27 100644
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -1521,7 +1521,8 @@
     "//components/dom_distiller/content/browser",
     "//components/domain_reliability",
     "//components/doodle",
-    "//components/download",
+    "//components/download/content/factory",
+    "//components/download/public",
     "//components/error_page/common",
     "//components/favicon/content",
     "//components/favicon/core",