Re-land "Add full system profiles in .pma file as part of metrics init."

Originally landed as:
https://chromium-review.googlesource.com/c/chromium/src/+/1746909

This reland has a fix for the bug where core system profile
information was being cleared by RecordEnvironment(). In the reland
I'm removing the IsTestingID() logic was interfering with a new test
I'm adding and that turned out to be unnecessary for any other test.

Prior to this change, only an incomplete system profile, notably
missing field trials and uma_default_state fields, was stored
at this point. So unclean shut downs after this point in time,
but before the initial metrics log was saved would not include
that info. This change fixes that by running the code that
populates all the system profile fields.

Since we're now calling ProvideSystemProfileMetrics() twice, the
logic in FieldTrialsProvider was no longer correct in tracking
the log creation time. Instead, this CL updates the API to have
that be passed in.

Additionally, Chrome OS an Screen Info providers needed updates since
their dependencies are not yet available this early, so they are not
able to provide all the information this early.

Finally, webview unit tests needed updating to init mojo as they are
now exercising the provider code which has a Mojo dependency.

Bug: 992538
Change-Id: Id52b63bb4d98b9f6133b3ba202b9253eaa88c195
TBR: [email protected]
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1746909
Commit-Queue: Alexei Svitkine <[email protected]>
Reviewed-by: Richard Coles <[email protected]>
Reviewed-by: Robert Kaplow <[email protected]>
Reviewed-by: Brian White <[email protected]>
Cr-Original-Commit-Position: refs/heads/master@{#687000}
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1758436
Cr-Commit-Position: refs/heads/master@{#689079}
22 files changed