[base] Rename TaskScheduler to ThreadPool

Reason: with the advent of other scheduling primitives in //base
(i.e. SequenceManager), TaskScheduler was no longer the only component
responsible for scheduling tasks. We will from now on refer to the
whole of //base/task as the "task scheduling infrastructure".

There are other types named "TaskScheduler" outside of base:: so
s/TaskScheduler/ThreadPool/ across the codebase wasn't possible.

Instead, this CL did:
 1) base/task/task_scheduler => base/task/thread_pool
    (catches all files with includes)
 1.1) Careful manual search to add files without includes
      (e.g. missing IWYU, docs, etc.)
 2) TaskScheduler => ThreadPool in all files affected by (1)
 3) task_scheduler => thread_pool in all files affected by (1)
 4) "task scheduler" => "thread pool"  in all files affected by (1)
 4) Move task_scheduler_util like headers in
    //content //components and //ios

Also:
 * Renamed UMA metrics from TaskScheduler.* to ThreadPool.*
   and dropped "Pool" from worker pool name suffixes.
 * Renamed TaskScheduler*Worker thread names to ThreadPool*Worker
 * In base/android: NativeTaskScheduler => NativeScheduler as it
   was referring to the whole of base/task.
   TaskSchedulerTest.java => NativePostTaskTest.java (former DNE)
 * Intentionally ignoring IWYU violations in this already too large
   CL.

In follow-up:
 * Rename other types as well:
     SchedulerWorker => WorkerThread
     SchedulerWorkerPool* => WorkerThreadGroup*

Bug: 951388
Change-Id: I5bc2688b593c7682ef7e56d6b228539970ba107e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1561552
Commit-Queue: Gabriel Charette <[email protected]>
Auto-Submit: Gabriel Charette <[email protected]>
Reviewed-by: John Abd-El-Malek <[email protected]>
Reviewed-by: François Doray <[email protected]>
Reviewed-by: Ilya Sherman <[email protected]>
Reviewed-by: Richard Coles <[email protected]>
Reviewed-by: Joe Mason <[email protected]>
Reviewed-by: Etienne Pierre-Doray <[email protected]>
Cr-Commit-Position: refs/heads/master@{#650997}
diff --git a/content/common/thread_pool_util.h b/content/common/thread_pool_util.h
new file mode 100644
index 0000000..36ebf5a
--- /dev/null
+++ b/content/common/thread_pool_util.h
@@ -0,0 +1,18 @@
+// Copyright 2017 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef CONTENT_COMMON_THREAD_POOL_UTIL_H_
+#define CONTENT_COMMON_THREAD_POOL_UTIL_H_
+
+#include "content/common/content_export.h"
+
+namespace content {
+
+// Returns the minimum number of foreground threads that the ThreadPool
+// must have in a process that runs a renderer.
+int GetMinForegroundThreadsInRendererThreadPool();
+
+}  // namespace content
+
+#endif  // CONTENT_COMMON_THREAD_POOL_UTIL_H_