Build the ServiceWorkerGlobalScope execution path on top of the Phase 19 worker infrastructure.
Scope:
- Add ServiceWorker and ServiceWorkerGlobalScope JS objects with self.registration and basic state exposure.
- Start install/waiting/active service worker threads from persisted registrations.
- Dispatch install, activate, message, error, and lifecycle events to the dedicated worker thread.
- Implement skipWaiting() and clients.claim() plumbing sufficient for later fetch/client issues.
- Track outstanding extendable work so workers can shut down deterministically when idle.
Acceptance criteria:
- Tests cover service worker thread startup, install/activate event ordering, skipWaiting promotion, and error propagation.
- A registration from the previous issue can execute a simple worker script and transition to active.
- Implementation reuses worker/event/structured-clone infrastructure instead of duplicating it.