Found and fixed my bug, though there's some code cleanliness fallout.