Added Nesting Levels and Offsets

Broke the attribute lists and return type for procedures and functions.
Going to be fixed once the semantic records are working. The
optionalparameterlist will return the list of parameters and they can be
added to the table at that time.
Started Semantic Analyzer

Added Semantic Records to the parser methods that chain starting at
assignmentStatement.
Refactored parts of the symbol table into the analyzer. Refactored the
symbol table rows.
Added gen_opt_rel_part in the Analyzer to start generating code
Added Program Activation and Deactivation Recs

For program, function, procedure
Updated the relational operators

The structure for the VM ASM now matches the rest of the ASM code. one
method per asm.
Commented out gen_opt_rel_part

It currently does not work until the code to push value to the stack is
generated.