In order to reduce parsing load on clients, the generated ParserKeywords now come in their own sorted-by-first-letter files, so that inclusion of the entire tree is unnecessary when only a handful of keywords will do. This also applies to the generated source code (which is pretty heavy to compile), which now is split into multiple files to enable parallel builds.