Added comments, changed symbol iterator to string, added a toString