Add the basic CSSStyleDeclaration CSSOM interface.

This just includes the .webidl file (with some of the functionality
commented out) and the stub implementations for the bindings.

This is another step towards #1721.
Add stub CSS2Properties type.
Stub in some uses of getPropertyValue and sketch out its implementation.
Add a style property to HTMLElement.
Implement something like CSS value serialization. Fetch actual inline style declarations from owning elements.
Implement setting element style properties. Improve serialization to return initial values when unspecified.
Improve color serialization by retaining author-specified keywords.
Add a ton of properties and improve a bunch of serialization.
Fixups for rust upgrade and jsref changes.
Rebase and update new css properties.
Add z-index support.
Move test_htmlelement_style.html out of the automatic tests because they don't all pass.
Implement RemoveProperty, SetProperty, and supported property indices.
Address review comments.
Slight simplification.
Fix syntax error in test_interfaces.html and make it pass.
Merge CSS2Properties and CSSStyleDeclaration.
Address review comments.
Add missing supported CSS properties.
auto merge of #4342 : jdm/servo/cssom, r=jdm,metajack

This does not implement any notion of CSSStyleDeclaration objects that do not have an owning element; there's no actual CSS object model in play here. This does support setting and getting properties of the style attribute for HTMLElement, and tries to implement the ambiguous CSS value serialization spec.