Properly encode dynamic access in segment prefetch (#72874)
When generating the segment responses, we should use the `prerender` API
instead of the `renderToReadableStream` API to ensure that when we abort
the stream, dynamic access is encoded as a hanging reference, rather
than as an error.
I didn't notice this was wrong until I managed to get an initial version
of the client Segment Cache running locally and the errors were surfaced
in the app.
No tests yet since it's not really possible to test until the client is
implemented, which I'm working on now. But you can look at the build
output and notice that the errors are no longer present.