fix(net): limit WebTransport handshake frame buffering (#36068)
## Summary
- bound incremental WebTransport handshake-frame buffering to 64 KiB
- share the bounded reader across SETTINGS, CONNECT response, and
CONNECT request decoding
- add boundary and arithmetic-overflow tests for the accumulator
## Bug
The WebTransport handshake decoders appended another QUIC chunk whenever
decoding returned `UnexpectedEnd`, without imposing a maximum
accumulated size. An incomplete SETTINGS or CONNECT frame could
therefore make the buffer continue growing for as long as more data
arrived.
The shared reader limits each accumulator, caps individual reads to the
remaining capacity plus one byte, and rejects an oversized frame before
copying the extra byte.
## Validation
- `./tools/format.js`
- `cargo fmt --check --package deno_net`
- `cargo test -p deno_net handshake_buffer --lib`
- `cargo build --bin deno`
- existing WebTransport connection spec