Fix https://github.com/julianhyde/optiq/issues/33, "SQL parser should allow different identifier quoting".

Each of the identifier quoting styles ("double quoted", `back tick` and [bracketed]) is implemented as a lexical state, which the lexer enters as soon as it starts parsing. All tokens except identifiers are in common between those lexical states. This makes the lexer's table about 3x its previous size.