This misses the final, most important part of actually creating a
service worker object and sending the script over to it in a WebWorker
process.
(cherry picked from commit 85541f1e763f2db63a235f57a29026331138a29e)
Now we can register jobs and they will be executed on the event loop
"later". This doesn't feel like the right place to execute them, but
the spec needs some updates in this regard anyway.
(cherry picked from commit 29416befe640eae7bf44b72e3f4ad42a1e397701)
This is mostly the fun boilerplate. Actually creating the Job queue
to do the heavy lifting is next.
(cherry picked from commit c77d9a2732b9325079bca713e4c97d75a0f6a54d)