Merge pull request #7 from scottidler/feature/FirstPass_atn

Feature/first pass atn
Many fixes.
Various fixes.
Fix MurmurHash, by changing the hash function to require
a template parameter and using a STL hash function
for computing it.
Completed a first pass on PredicateTransition and SemanticContext
(still more work to do).