CacheStorage: Add chrome tracing events.

This is a large CL, but it is mostly mechanical changes to plumb
trace_id values and to invoke TRACE_EVENT_WITH_FLOW throughout the
cache_storage module.

Supporting changes include:
  1. Adding SetValue() to the blink::TracedValue wrapper class.
  2. Creating a set of CacheStorageTracedValue() helper functions to
     convert various internal values into traceable parameters.
  3. The addition of a blink::cache_storage::CreateTraceId() helper
     function to create globally unique identifiers that can be used
     from either blink or content.

Note some cache_storage trace events are also added in background_fetch
and code_cache_host_impl.  These are necessary to ensure that there
is a preceding trace event before the TRACE_EVENT_FLAG_FLOW_IN used
internally by cache_storage.  This seemed easier than trying to come
up with some mechanism to conditionally set the flags.

Bug: 927538
Binary-Size: Added tracing which unfortunately uses a lot of macros.
Change-Id: Ieb7735f4fc07334a2891c2ea3929aa390e617d6f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1477823
Commit-Queue: Ben Kelly <wanderview@chromium.org>
Reviewed-by: Primiano Tucci <primiano@chromium.org>
Reviewed-by: Daniel Murphy <dmurph@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Rayan Kanso <rayankans@chromium.org>
Cr-Commit-Position: refs/heads/master@{#639076}
41 files changed