Move ExtensionWarningService and ExtensionsWarningSet, which are used by webrequest api, to extensions.

This cl resolve the dependencies of ExtensionsWarningSet of chrome strings:
- move the declarations of IDS_EXTENSION_WARNINGS_XXX to extensions_strings.grd;
- replace the usage of "IDS_PRODUCT_NAME" by creating GetProductName() function in ExtensionsClient and its subclasses.

BUG=352293

Review URL: https://codereview.chromium.org/503033002

Cr-Commit-Position: refs/heads/master@{#292378}
diff --git a/chrome/browser/extensions/extension_warning_badge_service.cc b/chrome/browser/extensions/extension_warning_badge_service.cc
index 7aa6bbc..b34ad6b 100644
--- a/chrome/browser/extensions/extension_warning_badge_service.cc
+++ b/chrome/browser/extensions/extension_warning_badge_service.cc
@@ -99,15 +99,14 @@
   DCHECK(CalledOnValidThread());
   size_t old_size = suppressed_warnings_.size();
 
-  const ExtensionWarningSet& warnings = GetCurrentWarnings();
+  const WarningSet& warnings = GetCurrentWarnings();
   suppressed_warnings_.insert(warnings.begin(), warnings.end());
 
   if (old_size != suppressed_warnings_.size())
     UpdateBadgeStatus();
 }
 
-const ExtensionWarningSet&
-ExtensionWarningBadgeService::GetCurrentWarnings() const {
+const WarningSet& ExtensionWarningBadgeService::GetCurrentWarnings() const {
   return ExtensionSystem::Get(profile_)->warning_service()->warnings();
 }
 
@@ -117,9 +116,9 @@
 }
 
 void ExtensionWarningBadgeService::UpdateBadgeStatus() {
-  const std::set<ExtensionWarning>& warnings = GetCurrentWarnings();
+  const std::set<Warning>& warnings = GetCurrentWarnings();
   bool non_suppressed_warnings_exist = false;
-  for (std::set<ExtensionWarning>::const_iterator i = warnings.begin();
+  for (std::set<Warning>::const_iterator i = warnings.begin();
        i != warnings.end(); ++i) {
     if (!ContainsKey(suppressed_warnings_, *i)) {
       non_suppressed_warnings_exist = true;