Update SemanticListener
Update tests
Update grammar
Clean up
Update project