Remove empty node

Empty node isn't equivalent to yecc's '$empty' and leads to infinite
loop.
Add missing elixirFile child

expressionList EOL was missing as the dual to expressionList EOL.
Collapse elixirFile children

Use ? to collapse expressionList + EOL children.
Exclude EOF to prevent infinite loop on empty file
Add comments to grammar

Elixir's yecc grammar doesn't handle comments because the tokenizer
strips the comments before passing the tokens to the yecc grammar, but
for this plugin, the comments need to be retained since characters can't
just be stripped.  Additionally, parsing comments will allow for
clickable ex_doc links.
Regenerate parser
Flex file for comment, whitespace, and EOL
Generate lexer
Fix LexerAdapter

Apply fix from tutorial
(http://confluence.jetbrains.com/display/IntelliJIDEA/Lexer+and+Parser+Definition)
File
ParserDefinition
Register ParserDefinition in plugin
SyntaxHighlighter
SyntaxHighlighterFactory
Register syntax highlighter factory for plugin