Syntax errors
Account for case in which cache is null on first use
Implement cache's matches() for Iterable input methods
Redesign SAP.solve for solving between sets of nodes

The algorithm cannot use as many shortcuts as the two-node input version.
Lots of dumb compiler errors