Replace NavigationPolicyInfo with WebNavigationInfo

- Introduce a top-level struct for navigaiton info.
- Avoid passing the struct by non-const reference.
- Add comments describing the fields.

We can follow up with WebNavigationParams constructor
taking WebNavigationInfo which will make it easy for all
the clients to commit.

TBR=tommycli@chromium.org, thestig@chromium.org

Bug: 855189
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng
Change-Id: I84aeb2771d83b4e0f1e713a259d7889d0956782f
Reviewed-on: https://chromium-review.googlesource.com/c/1279226
Commit-Queue: Dmitry Gozman <dgozman@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Cr-Commit-Position: refs/heads/master@{#607640}
22 files changed