Note: I originally developed this as a programming exercise as part of a tutorial for the Qi programming language in the Racket language ecosystem. But as it is equal parts programming exercise and short story, I thought I’d post it here as well. You can read this post in one of two ways, either (A) as an “Advent of Code” style programming exercise that you can do in your favorite language, or (B) as a short story — just read and look at the pretty pictures. If you’re doing (A), I...