Refactor VariationsHttpHeaderProvider.

The goal is to move the bulk of its implementation to the main
variations component, so that it can be used by this CL from JNI:
https://codereview.chromium.org/1528543003/

Creates variations_http_headers.cc in net that still needs to depend
on net, which uses the http header provider internally. Updates
callers of the previous API to use the new simpler API that doesn't
require going through the singleton by clients.

Additionally, also adds variations/synthetic_trials.h and moves
the synthetic trials structs from metrics_service.h to the new
file. This works around an otherwise circular dependency between
metrics and variations, since variations_http_header_provider.cc
depends on synthetic trials.

TBRs below are for owners of downstream users of the API which
is being updated.

BUG=530223
[email protected],[email protected]

Review URL: https://codereview.chromium.org/1530133005

Cr-Commit-Position: refs/heads/master@{#365991}
diff --git a/components/omnibox.gypi b/components/omnibox.gypi
index 8b2841d..dcb0536 100644
--- a/components/omnibox.gypi
+++ b/components/omnibox.gypi
@@ -37,7 +37,7 @@
         'search_engines',
         'toolbar',
         'url_formatter/url_formatter.gyp:url_formatter',
-        'variations_http_provider',
+        'variations_net',
       ],
       'export_dependent_settings': [
         'component_metrics_proto',