Add CloseReason to RTCIceTransport, RTCQuicTransport and RTCQuicStream

RTCQuicStream needs to know if it is being closed by
ContextDestroyed (which is only known from RTCIceTransport) to
avoid rejected promises.

Adding a CloseReason additionally moves all closing code to one
method which makes it easier to reason about.

Bug: 874296
Tbr: hbos@chromium.org
Change-Id: I58afc7b56412c836b8d178868297c4fbf76320c1
Reviewed-on: https://chromium-review.googlesource.com/c/1334935
Commit-Queue: Steve Anton <steveanton@chromium.org>
Reviewed-by: Steve Anton <steveanton@chromium.org>
Cr-Commit-Position: refs/heads/master@{#608581}
9 files changed