Fix for useless XML parser rules.

Something tells me that using : and | in your syntax might not be the best
decision.
Cleaned up the XML parser grammar.

This resolves all shift/reduce and reduce/reduce conflicts that were previously
present.
Removed the on_newline XML lexer callback.
Boilerplate for the XPath lexer.
Cleaned up XPath lexer boilerplate a bit.