Symbol Table Complete

built the symbol table, haven't integrated it with the ast yet, so
type checking isn't ready yet. i also made a test file for it
that proves most of the behavior is correct.