Popup metrics: simplify tab-under metrics

This CL does a few things.
1. Instantiate the tab-under nav throttle unconditionally, only
   *block* the navigation if the feature is enabled. This allows us
   to combine logic more effectively for metrics, by e.g. removing
   the flat set of navigations occurring in the background. For this
   data we can just trust the nav throttle.

2. Remove the old tab visibility metrics gated on cross origin redirects
   in favor of an approach that just logs 3 metrics:
    a. Tab.VisibleTime
    b. Tab.TabUnder.VisibleTime
    c. Tab.TabUnder.PopupToTabUnderTime
   I believe these three metrics are the most important, and they are
   now logged directly from input from the throttle, so they are
   comparable what will actually happen when we turn the experiment on.

3. A bug fix where we assume a navigation that started in the background,
   ends in the background.

4. Some new tests.

Bug: 661629
Change-Id: Idc1b82528cbf2bf2a1a94d174b4e07823ec30d17
Reviewed-on: https://chromium-review.googlesource.com/700718
Reviewed-by: Ilya Sherman <isherman@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Commit-Queue: Charlie Harrison <csharrison@chromium.org>
Cr-Commit-Position: refs/heads/master@{#506601}
7 files changed