Send ICCProfile for output display to renderer

Two motivations for this:

1. On Mac, this ensures that the ICCProfile sent to IOSurfaces
(in the renderer) will match the ICCProfile of the display
exactly, ensuring that the WindowServer will not need to do
any color conversion.

2. On all platforms, this fixes a bug wherein GetRasterColorSpace
would fail to find the ICCProfile that it is approximating,
and so it would inappropriately return sRGB instead of a
wide color gamut space.

Fix some tests, and add more tests:

Remove the hard-coded ICC profile IDs that were used for test
color spaces outside of layout tests since they aren't needed,
and were masking bugs in ID tracking.

Add unit tests for the ICC profile cache. The ICC profile
cache is messy and should be removed entirely, but these
tests will at least alert us to changes in behavior, until
we remove it entirely (see crbug.com/766736).

R=dcheng, hubbe
TBR=avi (content/), ccameron@chromium.org

(cherry picked from commit 64a55ad8cf4f8601c5424de21e6900becd890640)

Bug: 764352
Change-Id: Id41c8d8dc2c262a0ecc3f7aa25dcc70f334e7667
Reviewed-on: https://chromium-review.googlesource.com/672154
Commit-Queue: ccameron chromium <ccameron@chromium.org>
Reviewed-by: Fredrik Hubinette <hubbe@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#503362}
Reviewed-on: https://chromium-review.googlesource.com/683355
Reviewed-by: ccameron chromium <ccameron@chromium.org>
Cr-Commit-Position: refs/branch-heads/3202@{#452}
Cr-Branched-From: fa6a5d87adff761bc16afc5498c3f5944c1daa68-refs/heads/master@{#499098}
11 files changed