Make rtc::Optional IceConfig parameters interpreted consistently.

The convention is reinforced so that setting a rtc::Optional IceConfig
parameter to null restores the default value. Helper getters are added
to IceConfig to provide either user-defined value or the default.
Shared constants and config defaults used in p2p are moved to
p2pconstants.h/cc for future management with sanity checks.

Bug: webrtc:8993
Change-Id: I976cf1eef5a654b8911f449248bb2f3086279db8
Reviewed-on: https://webrtc-review.googlesource.com/61149
Commit-Queue: Qingsi Wang <qingsi@google.com>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22575}
diff --git a/rtc_base/timeutils.h b/rtc_base/timeutils.h
index f602d48..5eb73c7 100644
--- a/rtc_base/timeutils.h
+++ b/rtc_base/timeutils.h
@@ -148,6 +148,8 @@
     return min_ == o.min_ && max_ == o.max_;
   }
 
+  bool operator!=(const IntervalRange& o) const { return !operator==(o); }
+
  private:
   int min_;
   int max_;