Formatting.
Allow 0 in nth expressions.

:nth-child(0n + 5) is perfectly fine.
Case-insensitive "odd" and "even" in nth expression.
Case-insensitive "not" pseudo-class.
Use whitespace definition from Selectors spec.
Make HTMLNode attributes accessible via subscripting.

This replaces the override of -valueForKey:.
Consider text nodes for :empty pseudo-class.