Implement var() via a PropertyParser decorator.
Expose hooks for implementing var().
The tricky part here is around CSS inheritance, it works naturally in the existing cascade implementation.
Resolve attr() functions.
It's defined during query, because that's when Stylish Haskell (or it's callers)
have easy access to the element being queried.
Resolve relative link tags for caller.
Export traversePrepopulatedStyles
Add additional hooks for callers:
* Resolve relative URLs.
* Set priority on any stylesheet implementation.
* Substitute content during XML Conduit traversal in place of computed styles.
Update Stylish HTML Conduit to use fixed psuedoelement handling.
Rework psuedoelement infrastructure so they can be their own boxes.
Test/fix parsing of psuedoclasses/elements.
Add support for ::before/::after psuedoclasses to HTML Conduit bindings.
Add support for psuedoelements/classes.
Tidyup testsuite code, according to newly enabled compiler warnings.
Improve code cleanliness to avoid future bugs.
Data.CSS.Style.Selector.Index: fix potential crash.
Code cleanliness: Interpret Data.CSS.Style.Importance.splitProperties return value correctly.
Factorize out cascade logic.
Add method to override CSS inheritance.
Parse HTML 'style' attributes.
Have Stylish HTML Conduit depend on a non-buggy version of Stylish Haskell.