I think you could save yourself a level of nesting here by using `Puzzle#all_units`.