Move stun.h to api/.

We now have two downstream users of stun.h, so it appears to be
generally usable. I put this in a new dir networking/, but I'm open to
suggestions here (maybe some things in api/ should move in there).

I checked what our downstream users are actually using, and it's

cricket::ComputeStunCredentialHash
cricket::<constants>
cricket::TurnMessage
cricket::GetStunErrorResponseType
cricket::StunAttribute::CreateAddress
cricket::StunErrorCodeAttribute
cricket::StunByteStringAttribute
StunAttribute::CreateUnknownAttributes
cricket::TurnErrorType
cricket::StunMessage

I reckoned that was pretty much everything in stun.h, so I didn't
bother splitting it up. They don't use every function and constant
in there, but all _types_ of functions and constants, so for the
sake of coherence I don't think it makes sense to split it.

There's some old stuff in there like GTURN which could arguably
be split out, but it should likely go away soon anyway, so I don't
think it's worth the effort.

Steps:
1) land this
2) update downstream to point to the new header and target
3) remove p2p/base:stun_types.

Bug: webrtc:11091
Change-Id: I1f05bf06055475d25601197ec6fefb8d3b55e8e3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/159923
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29822}
diff --git a/p2p/BUILD.gn b/p2p/BUILD.gn
index 42afcff..6ed14a8 100644
--- a/p2p/BUILD.gn
+++ b/p2p/BUILD.gn
@@ -15,12 +15,14 @@
   ]
 }
 
+# TODO(bugs.webrtc.org/11091): Remove this target when downstream is updated.
 rtc_library("stun_types") {
   sources = [
-    "base/stun.cc",
+    "base/empty.cc",
     "base/stun.h",
   ]
   deps = [
+    "../api/transport:stun_types",
     "../rtc_base:checks",
     "../rtc_base:rtc_base",
     "../rtc_base:rtc_base_approved",
@@ -103,6 +105,7 @@
     "../api/crypto:options",
     "../api/rtc_event_log",
     "../api/transport:enums",
+    "../api/transport:stun_types",
     "../logging:ice_log",
     "../rtc_base",
     "../rtc_base:checks",
@@ -175,6 +178,7 @@
       "../api:libjingle_peerconnection_api",
       "../api:packet_socket_factory",
       "../api/crypto:options",
+      "../api/transport:stun_types",
       "../rtc_base",
       "../rtc_base:gunit_helpers",
       "../rtc_base:rtc_base_approved",
@@ -203,7 +207,6 @@
       "base/stun_port_unittest.cc",
       "base/stun_request_unittest.cc",
       "base/stun_server_unittest.cc",
-      "base/stun_unittest.cc",
       "base/tcp_port_unittest.cc",
       "base/transport_description_factory_unittest.cc",
       "base/turn_port_unittest.cc",
@@ -220,6 +223,7 @@
       "../api:libjingle_peerconnection_api",
       "../api:packet_socket_factory",
       "../api:scoped_refptr",
+      "../api/transport:stun_types",
       "../api/units:time_delta",
       "../rtc_base",
       "../rtc_base:checks",
@@ -251,6 +255,7 @@
     ":rtc_p2p",
     ":stun_types",
     "../api:packet_socket_factory",
+    "../api/transport:stun_types",
     "../rtc_base",
     "../rtc_base:checks",
     "../rtc_base:rtc_base_tests_utils",
@@ -270,6 +275,7 @@
     ":rtc_p2p",
     ":stun_types",
     "../api:packet_socket_factory",
+    "../api/transport:stun_types",
     "../rtc_base",
     "../rtc_base:checks",
     "../rtc_base/system:rtc_export",