vhdl: Stop using trashbox and correctly parse EOF

Although the results of discussion in #90 (trashBox) was technically interesting, I think we are reaching a consensus that it might be better to spend time fixing the parser than to modify it to use a GC mechanism.
This commit implements that fix to the VHDL parser, in line to what was already done in the Verilog parser by @b4n.
Any specific reason why you made it a new keyword rather than a new token type?  I don't know, it just seem a little weird to me.