CSS Properties and Values API: Use initial value where appropriate for var()

This patch fixes var() references to registered properties to return
initial values where appropriate. When a registered property is not
explicitly set, var() references to it should result in that property's
initial value. We now store the initial value as a token stream as well
to accommodate this.

Any unregistered property in a var() cycle will continue to compute to
their initial value (i.e. the invalid value). Any registered property
in a var() cycle similar compute to their initial value (I don't think
this is explicitly mentioned in the spec, but for consistency this makes
more sense than the unset value). Valid references to properties in a
var() cycle will resolve to the referenced property'd initial value.

BUG=641877

Review-Url: https://codereview.chromium.org/2358203003
Cr-Commit-Position: refs/heads/master@{#420579}
8 files changed