Simplify parser tokens

Remove unnecessary tokens from AST to simplify it in preparation for
creating a PSI tree.
Add initial Psi definitions
Use Psi definitions to clean up code

Clean up some compound checks using the new Psi classes
Rename block-type Psi classes to avoid confusion

The Handlebars lexer uses "Open Block" to denote the "{{#" token,
so make sure that our Psi classes representing the whole block mustache
(i.e. "{{#foo}}", "{{/bar}}", "{{^baz}}") are distinguished from them
by adding a "Mustache" suffix to their names.
Merge pull request #56 from dmarcotte/psi-tree

Add a sensible set of Psi classes