Conversion to ANTLR 4 (work in progress)

This is a work-in-progress showing the conversion of **BQL.g** (ANTLR 3.4) to **BQL.g4** (ANTLR 4.2). Here is the current state of the conversion:

* Almost all custom actions have been removed from **BQL.g4** and placed in a separate listener-based analyzer for the compiler, `BQLCompilerAnalyzer.java`.
* All tests in **TestBQL.java** pass.
* ~~All tests in **TestErrorHandling.java** fail, since `BQLCompiler.getErrorMessage` has not been updated to work with the ANTLR 4 exceptions.~~ All tests in **TestErrorHandling.java** now pass and have greatly improved error locality compared to the ANTLR 3 reporting; the pull request was updated to work with ANTLR 4 exceptions.