base: introduce Subprocess

Introduce a class to handle fork() and
fork() + exec. See comment in the header for
usage and caveats.

Bug: 141917389
Change-Id: I3deb0245dac378eba4cd007d4ebd303f431ae45b
diff --git a/BUILD b/BUILD
index ff8586a..0108eac 100644
--- a/BUILD
+++ b/BUILD
@@ -288,6 +288,7 @@
         "include/perfetto/ext/base/string_utils.h",
         "include/perfetto/ext/base/string_view.h",
         "include/perfetto/ext/base/string_writer.h",
+        "include/perfetto/ext/base/subprocess.h",
         "include/perfetto/ext/base/temp_file.h",
         "include/perfetto/ext/base/thread_annotations.h",
         "include/perfetto/ext/base/thread_checker.h",
@@ -534,6 +535,7 @@
         "src/base/string_splitter.cc",
         "src/base/string_utils.cc",
         "src/base/string_view.cc",
+        "src/base/subprocess.cc",
         "src/base/temp_file.cc",
         "src/base/thread_checker.cc",
         "src/base/thread_task_runner.cc",