[css-properties-values-api] Multi-value StylePropertyMap.set.

This adds support for setting multiple values with TypedOM for list-valued
custom properties. For example, for a property --x with syntax <length>+,
it will now be possible to do:

  element.attributeStyleMap.set('--x', CSS.px(1), CSS.px(2));

This is done by producing a CSSVariableReferenceValue holding tokens
equivalent to the incoming CSSStyleValues, provided that those values
match the grammar of the custom property.

R=chrishtr@chromium.org

Bug: 641877
Change-Id: Ic28497edbbea894a9c09b840dcb6c8fb825d99bb
Reviewed-on: https://chromium-review.googlesource.com/c/1270963
Commit-Queue: Anders Ruud <andruud@chromium.org>
Reviewed-by: Chris Harrelson <chrishtr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#599164}
3 files changed