Drop buffered metadata for a stream in ForgetStream().

This CL is a follow-up to a comment in cl/471086207
(http://screen/7SxFkVearSiZiaP), which pointed out that buffered metadata for a
stream may still be sent even after ForgetStream() for that stream is called on
the metadata manager.

In practice, this is unlikely to happen in production because pending metadata
is flushed at once for HTTP/2 [1] and will be flushed at once for HTTP/3 [2],
without intervening ForgetStream() calls, but this CL fixes ForgetStream() to
drop buffered metadata for the stream as a solid conceptual fix and in case
future changes allow intervening ForgetStream() calls in HTTP/2 or HTTP/3.

[1] e.g., http://google3/gfe/gfe2/vtl/vtl_client_dispatcher.cc;l=294-302;rcl=464844844
[2] e.g., cl/470321865

PiperOrigin-RevId: 472729185
diff --git a/quiche/spdy/core/metadata_extension.h b/quiche/spdy/core/metadata_extension.h
index 6b171b5..a749904 100644
--- a/quiche/spdy/core/metadata_extension.h
+++ b/quiche/spdy/core/metadata_extension.h
@@ -109,6 +109,8 @@
   // which case returns nullptr.
   std::unique_ptr<spdy::SpdyFrameIR> Next();
 
+  SpdyStreamId stream_id() const { return stream_id_; }
+
  private:
   SpdyStreamId stream_id_;
   Http2HeaderBlock payload_;