Generalize abort tracking to page end state tracking
page_load_metrics abort tracking combines tracking of some
page 'end state' information, such as navigating away from
the page or closing the tab, as well as some intermediate
page state information, such as backgrounding the page.
this makes the implementation complex and sometimes
difficult to reason about.
this change refactors abort tracking into tracking page
end states, which abort observers can convert into
PageAbortInfo which provides a more abort-centric view
of the page load.
BUG=
693725
Review-Url:
https://codereview.chromium.org/2699933003
Cr-Commit-Position: refs/heads/master@{#452036}
Committed:
https://chromium.googlesource.com/chromium/src/+/909ebae98693013efbeb783a143c02c5bf2214f3