Print lexer state (if any) when using '-L' switch

Helpful when debugging the lexer in general.
Add some missing media type DOM elements

And split out HTML / CSS2 media types and CSS3 keyframe selectors from
"html4" DOM elements.
Properly distinguish clip element from CSS function

And revert "Temprarily remove the "rect" SVG DOM element."

This reverts commit fcea9f0bd65807be14c0cbf56b3d21659a81856f.
The lexer now uses a variable to distinguish of being inside a CSS
property declaration or outside. If inside, don't mark token as css_dom
(e.g. 'rect'). This circumvents the ambiguity between the "rect" SVG DOM
element and the "clip()" CSS function. CSS functions only occur within
property declarations.

For that, ';' had to be promoted from a literal to an ordinar token.