Modify headers from the NavigationHandle.

In content/public, there is two ways to act on a new navigation:

1) The "new" ones that are NavigationHandle based. Users of the API needs
   to implement either a WebContentsObserver or a NavigationThrottle.
   Then, they can act on the NavigationHandle.

2) The "legacy" ones where you implement the ContentBrowserClient:
   ContentBrowserClient::NavigationRequestStarted()
   ContentBrowserClient::NavigationRequestRedirected()
   The latter are used to modify request headers and load flags.

The goal is to remove 2) and keep only 1)

This CL is making able to modify headers from the NavigationHandle. Following
CL will deprecate and then remove 2).

Bug: 919432
Change-Id: I4db812d4cf1df2f67cf8bf97dca410009a1a3046
Reviewed-on: https://chromium-review.googlesource.com/c/1392949
Reviewed-by: Camille Lamy <clamy@chromium.org>
Commit-Queue: Arthur Sonzogni <arthursonzogni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#621997}
5 files changed