Better lexing of CDATA tags.

This means the lexer is now capable of lexing CDATA tags that contain text such
as ]].
Cleaned up lexer rules a bit.

There's no benefit to adding variables for angle brackets and such, it's much
easier to grok to just use them directly.