Remove local workaround from Java, introduce a testcase for ".keyword"
Work in progress:

- begin gets the general lexeme regexp
- terminators get the general lexeme regexp
- subMode checks if the found lexeme is indeed a known keyword
- problem: if lexeme is found it prevents more specific subMode begins from working even if it's false positive (i.e., not a known lexeme)
A simpler solution: use |-separated specific keywords in begin but surround it with optional dots in terminators. This eliminates the need to compile beginKeywords and to check against them in subMode.
Missed changes from the removal of compiling of beginKeywords and inlining compileKeywords code.
Merge branch 'real-begin-keywords'