When these pseudo classes are changed, we should invalidate distribution.
See: http://www.whatwg.org/specs/web-apps/current-work/multipage/selectors.html#pseudo-classes
split to Bug 101900, Bug 101901, Bug 101902, and Bug 101903. This seems too big.