* Mutually recursive functions * Refactor all tree visitors to prevent infinite recursion (maybe add decicated tree traversal functions & visitors?) * Type identifier location + move types to ast library / split type values and type ast nodes