First pass, all tests pass, but had to implement an isEmpty on the sets