Unify RequestStore, PrerenderStore and CacheStore (#70819)
Stacked on #70889.
This merges these three stores into a single AsyncLocalStorage context
containing a disjoint union named WorkUnitStore. That way they're
mutually exclusive. This prevents us from leaking RequestStore
information in either PrerenderStore or CacheStore.
---------
Co-authored-by: Janka Uryga <lolzatu2@gmail.com>