Didn't completely finish the code I was working on today, but I got a good portion of it done and what I do have seems to be working correctly. Might pick it back up after dinner while there's a chance the design will still be in my head. I'm continuing the trend of the new code being simpler than what I wrote the last time I solved this problem so still feeling pretty good about this rewrite.