extended JOIN token recognition/lexing (eg: FULL OUTER JOIN, NATURAL JOIN)

Added FULL to common keywords (well, it's common here ;) and extended the lexer regex so it correctly matches 'FULL OUTER/LEFT/RIGHT JOIN', as well as 'NATURAL JOIN' and 'CROSS JOIN'. Previously the leading FULL would become disconnected from the rest of the token.

https://en.wikipedia.org/wiki/Join_%28SQL%29#Cross_join
https://en.wikipedia.org/wiki/Join_%28SQL%29#Natural_join
https://en.wikipedia.org/wiki/Join_%28SQL%29#Full_outer_join