Simplify ServiceWorkerContainer's access to its window.

Actually two refactorings for navigator.serviceWorker.ready which is
sensitive to lifetimes. No change in behavior.

First, ServiceWorkerContainer is a DOMWindowLifecycleObserver to
access a window for postMessage. But it already has an execution
context that can provide the DOMWindow. Use that instead.

Second, adds an unrelated assertion that the container's
ServiceWorkerContainerClient has been cleaned up by the time that the
container is deleted. To do otherwise is to leave the
ServiceWorkerContainerClient with a dangling pointer to the container.

BUG=363967

Review URL: https://codereview.chromium.org/328663010

git-svn-id: svn://svn.chromium.org/blink/trunk@175973 bbb929c8-8fbe-4397-9dbb-9b2b20218538