Async hydration in Preact

How Preact resumes hydration across Suspense boundaries, why useId made that hard, and how streaming changes the tradeoffs.