I made this with two programming teammates, Jack Storm and David Johnston. All code belongs to all three of us. Keeping this here for posterity.