Implement WebPermissionClient for Document and Worker contexts

It does enable Permissions.query() in Document and Worker context.

It is using the mojo pipe associated to the RenderFrameImpl or BlinkPlatformImpl
so the PermissionManager doesn't need to know in which context it lives.
However, it needs to do some thread jumping to be back in the main thread.

This is based on top of https://codereview.chromium.org/804553003

BUG=437770

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

Cr-Commit-Position: refs/heads/master@{#320927}
12 files changed