Track thread activities in order to diagnose hangs.

There are a large number of "unclean shutdowns" in Chrome
with little information available as to what the various
threads of Chrome were doing that prevented a proper
close.

The ActivityTracker class provides a low-overhead way
of keeping track of what each thread is doing in a
persistent manner that can be analyzed both in real-
time and post-mortem.

The ActivityAnalyzer class provides an interface into
the persisted data for analysis.  Using that data is
for a future CL.

Operation is controlled by an experiment.  Enable
manually with:

--enable-features=StabilityDebugging

BUG=620813

Committed: https://crrev.com/5d3470e5a33aaad936e171bee625b6b978ee3c34
Review-Url: https://codereview.chromium.org/1980743002
Cr-Original-Commit-Position: refs/heads/master@{#410470}
Cr-Commit-Position: refs/heads/master@{#410938}
21 files changed