Refactor PageLoadMetricsObserver completion callback policy
This patch modifies PageLoadMetricsObserver to invoke OnComplete for tracked
loads that committed, and OnFailedProvisionalLoad for tracked loads that did
not commit.
This makes it more straightforward for implementers to reason about which method
to override, and encourages separation of code for the different states into
methods which makes observer code more maintainable.
This patch also refactors the various observers to implement these methods as
needed.
BUG=
627585
Committed:
https://crrev.com/0259d67099838b4b0f2aabcbd3108e9952d56204
Cr-Commit-Position: refs/heads/master@{#406454}