f0736f4d35
Standardizes the getX() / __resetX() pattern hand-rolled identically across every store: lazy construction on first get(), memoized thereafter, and a reset() that runs an optional teardown (e.g. destroy()) and clears so the next get() rebuilds. Lazy by construction, so owning modules stay inert at import. Covered by unit tests (laziness, memoization, rebuild-after-reset, teardown-once-with-live-instance, reset-before-get no-op, falsy-value caching). Not yet adopted by the stores — that migration is a separate step.