Return predefined values instead of null for Grammar methods getTokenNames, getTokenDisplayNames, and getRuleNames

Improve consistency of Grammar methods for names of rules and tokens
Merge pull request #548 from sharwell/invalid-names

Improve consistency of Grammar methods for names of rules and tokens
add tool-template and generatedcode-runtime version compatibility check. Target authors add a VERSION template and supply a RuntimeMetaData.checkVersion() method.
Git hygiene

Marked .DS_Store files as ignored
add basic code generation testing rig and 1st test.
Fixes #554
Merge pull request #566 from parrt/args-as-templates

Args as templates
Add regression test for #561 (token named ATN breaks reference to ATN.INVALID_ALT_NUMBER)
Qualify references to the ATN class to avoid symbol conflicts with tokens named ATN (fixes #561)
Merge pull request #575 from sharwell/fix-561

Qualify references to ATN class in generated code if it would alias a token
To get static checking I converted the version template to a method and also moved the compatibility check into the target so that in the worst-case target developers can override the compatibility check per their needs. I have also decided to throw an exception for the Java target when the code generation and runtime library versions are incompatible. Change the tool message per Sam's request.
tweaks per Sam's comment. define default version so targets don't fail to compile.
should not be a default version lest all targets pass by default. make sure java target and tool move in lockstep. Fixes #572
damn intellij/git always loses changes but just with antlr repo. DAMN! commiting last files manually
get good message
Merge pull request #569 from parrt/runtime-tool-version-sync

add tool-template and generatedcode-runtime version compatibility check
Add ATNSimulator.clearDFA, and implement for LexerATNSimulator and ParserATNSimulator
Simplify the GrammarAST constructors, and correct the token start/stop index not being set
Add utility method ATNConfigSet.getAlts
Merge pull request #584 from sharwell/clear-dfa

Add ATNSimulator.clearDFA