Adds Badging API support on Windows.

Explainer: https://github.com/WICG/badging/blob/master/explainer.md

The Windows 7 API for drawing badges on the taskbar requires that
we create a 16x16px bitmap which is rendered on the bottom right
corner of the taskbar icon.

Notes:
- This does not support numeric badges, only a '•' when
Badge.set called.
- The Windows 7 taskbar decoration API is limited in that it can
only display the decoration while the application is open,
which diverges from the spec, as the spec calls for a badge that
persists.
- There is some duplication and mess with the ChromeOS Badging
implementation. This has been left intentionally, as we're
trying to get it in for the M73 milestone, and will be cleaned up
in a future CL.

See https://bugs.chromium.org/p/chromium/issues/attachment?aid=371505&signed_aid=JfhG8iHpWlMp1bt1GRS6Eg==&inline=1
for an example of what badging looks like (note that the user's
profile icon is a burger, which is why it displays when there
is no badge).

Bug: 719176
Change-Id: I1267a3a37d11ac365348201facbd0bc1ea4deb36
Reviewed-on: https://chromium-review.googlesource.com/c/1353049
Commit-Queue: Jay Harris <harrisjay@chromium.org>
Reviewed-by: Michael Wasserman <msw@chromium.org>
Reviewed-by: Matt Giuca <mgiuca@chromium.org>
Cr-Commit-Position: refs/heads/master@{#616560}
15 files changed