Require semicolons for certain syntax elements.

This makes the grammar non-ambiguous for cases such as the following:

    foo = A | B;
    bar = C | D;

Without the semicolons this would be parsed as following:

    foo = A | B foo = C | D

Which will trigger a parsing error due to the equals sign.
Rename Driver#initialize to Driver#setup
EditorConfig settings for .y files.
Initial steps for bootstrapping using Racc.

This process will use a Racc parser to parse the initial grammar. The resulting
AST will then be processed by the compiler as usual and spit out a LL(1) parser.
This parser can then be tracked in Git and used for generating new versions of
itself.