headless: Allow per-context protocol handlers

Make it possible to set protocol handlers per browser context instead of
having to replace handlers for the browser globally.

BUG=546953

Review-Url: https://codereview.chromium.org/2092773002
Cr-Commit-Position: refs/heads/master@{#401638}
14 files changed