Move optional.h to webrtc/api/

We use Optional in our public API, so its header should be in
webrtc/api/.

BUG=webrtc:8205

Review-Url: https://codereview.webrtc.org/3011943002
Cr-Commit-Position: refs/heads/master@{#19693}
diff --git a/webrtc/test/BUILD.gn b/webrtc/test/BUILD.gn
index 0858468..9ec0290 100644
--- a/webrtc/test/BUILD.gn
+++ b/webrtc/test/BUILD.gn
@@ -60,6 +60,7 @@
 
   deps = [
     "..:webrtc_common",
+    "../api:optional",
     "../api/video_codecs:video_codecs_api",
     "../call:video_stream_api",
     "../common_video",
@@ -375,6 +376,7 @@
   ]
   deps = [
     "..:webrtc_common",
+    "../api:optional",
     "../rtc_base:rtc_base_approved",
   ]
   if (is_ios) {
@@ -437,6 +439,7 @@
   deps = [
     ":fileutils",
     ":test_support",
+    "../api:optional",
     "../rtc_base:rtc_base_approved",
     "//testing/gmock",
     "//testing/gtest",
diff --git a/webrtc/test/fuzzers/BUILD.gn b/webrtc/test/fuzzers/BUILD.gn
index e9d771c..6035cd9 100644
--- a/webrtc/test/fuzzers/BUILD.gn
+++ b/webrtc/test/fuzzers/BUILD.gn
@@ -207,6 +207,7 @@
   ]
   deps = [
     "../..:webrtc_common",
+    "../../api:optional",
     "../../api/audio_codecs:audio_codecs_api",
     "../../modules/rtp_rtcp",
     "../../rtc_base:rtc_base_approved",
@@ -369,6 +370,7 @@
     "audio_processing_fuzzer_configs.cc",
   ]
   deps = [
+    "../../api:optional",
     "../../modules:module_api",
     "../../modules/audio_processing",
     "../../rtc_base:rtc_base_approved",
diff --git a/webrtc/test/fuzzers/audio_decoder_fuzzer.cc b/webrtc/test/fuzzers/audio_decoder_fuzzer.cc
index ff4478d..441b12b 100644
--- a/webrtc/test/fuzzers/audio_decoder_fuzzer.cc
+++ b/webrtc/test/fuzzers/audio_decoder_fuzzer.cc
@@ -13,9 +13,9 @@
 #include <limits>
 
 #include "webrtc/api/audio_codecs/audio_decoder.h"
+#include "webrtc/api/optional.h"
 #include "webrtc/modules/rtp_rtcp/source/byte_io.h"
 #include "webrtc/rtc_base/checks.h"
-#include "webrtc/rtc_base/optional.h"
 
 namespace webrtc {
 namespace {
diff --git a/webrtc/test/fuzzers/audio_processing_fuzzer_configs.cc b/webrtc/test/fuzzers/audio_processing_fuzzer_configs.cc
index f9814ec..21810ad 100644
--- a/webrtc/test/fuzzers/audio_processing_fuzzer_configs.cc
+++ b/webrtc/test/fuzzers/audio_processing_fuzzer_configs.cc
@@ -11,7 +11,7 @@
 #include "webrtc/modules/audio_processing/include/audio_processing.h"
 #include "webrtc/test/fuzzers/audio_processing_fuzzer.h"
 
-#include "webrtc/rtc_base/optional.h"
+#include "webrtc/api/optional.h"
 
 namespace webrtc {
 
diff --git a/webrtc/test/testsupport/fileutils.h b/webrtc/test/testsupport/fileutils.h
index 570d7b4..5ea7d31 100644
--- a/webrtc/test/testsupport/fileutils.h
+++ b/webrtc/test/testsupport/fileutils.h
@@ -16,7 +16,7 @@
 #include <string>
 #include <vector>
 
-#include "webrtc/rtc_base/optional.h"
+#include "webrtc/api/optional.h"
 
 namespace webrtc {
 namespace test {
diff --git a/webrtc/test/testsupport/fileutils_unittest.cc b/webrtc/test/testsupport/fileutils_unittest.cc
index bdabb84..fb780be 100644
--- a/webrtc/test/testsupport/fileutils_unittest.cc
+++ b/webrtc/test/testsupport/fileutils_unittest.cc
@@ -17,8 +17,8 @@
 #include <list>
 #include <string>
 
+#include "webrtc/api/optional.h"
 #include "webrtc/rtc_base/checks.h"
-#include "webrtc/rtc_base/optional.h"
 #include "webrtc/rtc_base/pathutils.h"
 #include "webrtc/test/gtest.h"
 
diff --git a/webrtc/test/video_capturer.h b/webrtc/test/video_capturer.h
index 2535370..deeb5c8 100644
--- a/webrtc/test/video_capturer.h
+++ b/webrtc/test/video_capturer.h
@@ -14,12 +14,12 @@
 
 #include <memory>
 
+#include "webrtc/api/optional.h"
 #include "webrtc/api/video/i420_buffer.h"
 #include "webrtc/api/video/video_frame.h"
 #include "webrtc/media/base/videoadapter.h"
 #include "webrtc/media/base/videosourceinterface.h"
 #include "webrtc/rtc_base/criticalsection.h"
-#include "webrtc/rtc_base/optional.h"
 
 namespace cricket {
 class VideoAdapter;