Lex `!==` / `: ` as OPERATOR_KEYWORD

Lex `!==` used in keyword identifiers as OPERATOR_KEYWORD so that the
bnf grammar doesn't have to sort out precedence of `!==` as binary
operator and as a keyword identifier.
Lex `<<>>` / `: ` as OPERATOR_KEYWORD

Match `<<>>` followed by `: ` as OPERATOR_KEYWORD to match handling of
`!==` / `: `.
Lex `%{}` / `: ` as OPERATOR_KEYWORD

Match `%{}` followed by `: ` as OPERATOR_KEYWORD to match handling of
`!==` / `: `.
 Lex `{}` / `: ` as OPERATOR_KEYWORD

Match `{}` followed by `: ` as OPERATOR_KEYWORD to match handling of
`!==` / `: `.
Lex {AND_OPERATOR} / {COLON}{SPACE} as OPERATOR_KEYWORD

Lex `&&&` / `: `, `and` / `: `, and `&&` / `: ` as OPERATOR_KEYWORD.
Lex {ARROW_OPERATOR} / {COLON}{SPACE} as OPERATOR_KEYWORD

Lex ("<<<" | "<<~" | "<|>" | "<~>" | ">>>" | "~>>" | "<~" | "|>" | "~>")
/ ": " as OPERATOR_KEYWORD.
Lex `^^^` / `: ` as OPERATOR_KEYWORD
Lex {OR_OPERATOR} / ": " as OPERATOR_KEYWORD

Lex ("|||" | "||" | "or") / ": " as OPERATOR_KEYWORD.