Assignment 2 works on 1 instance, refactored TermList to Expression:
MUCH NICER!