Fix circular dependencies between optional, array_view, and rtc_base.

This splits things out of rtc_base and makes dependencies explicit.

Bug: webrtc:6828
Change-Id: Id521896c3c43595349021c857bec216e429a0c8d
Reviewed-on: https://webrtc-review.googlesource.com/32780
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#21264}
diff --git a/video/BUILD.gn b/video/BUILD.gn
index 16e9709..dcc2762 100644
--- a/video/BUILD.gn
+++ b/video/BUILD.gn
@@ -64,6 +64,7 @@
     "../call:rtp_interfaces",
     "../call:video_stream_api",
     "../modules/rtp_rtcp:rtp_rtcp_format",
+    "../rtc_base:checks",
     "../system_wrappers:field_trial_api",
     "../system_wrappers:metrics_api",
 
@@ -113,6 +114,7 @@
       "../modules/video_coding:webrtc_h264",
       "../modules/video_coding:webrtc_vp8",
       "../modules/video_coding:webrtc_vp9",
+      "../rtc_base:checks",
       "../rtc_base:rtc_base_approved",
       "../rtc_base:rtc_base_tests_utils",
       "../rtc_base:rtc_task_queue",
@@ -219,6 +221,7 @@
       "../common_video",
       "../logging:rtc_event_log_api",
       "../modules/rtp_rtcp",
+      "../rtc_base:checks",
       "../rtc_base:rtc_base_approved",
       "../system_wrappers",
       "../system_wrappers:metrics_default",
@@ -289,6 +292,8 @@
       "../modules/video_coding:webrtc_h264",
       "../modules/video_coding:webrtc_vp8",
       "../modules/video_coding:webrtc_vp9",
+      "../rtc_base:checks",
+      "../rtc_base:rate_limiter",
       "../rtc_base:rtc_base_approved",
       "../rtc_base:rtc_base_tests_utils",
       "../rtc_base:rtc_numerics",