Better hover, active and focus states than CSS pseudo-classes, and a callback when the interactive state changes.