Implement :is, :where, & :not functional pseudoclasses.
This is needed by some of the lowerings for other pseudoclasses.
TODO correctly compute specificity.
Prepare to interpret functional pseudoclasses.
Optimize: use HashMap.Lazy for cascade.
Improve documentation, release version 1.2
Write reference documentation.
Test rules capturing of ConditionalStyleSheet.
Code cleanliness: drop unneeded ' from Data.CSS.Style.Cascade.dispatch'
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.
Rework psuedoelement infrastructure so they can be their own boxes.
Add support for psuedoelements/classes.
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.
Aid attribute sorting, fix install of internal modules.
Test/fix cascade logic for selector specificity.