This looks fun. Might try to make a CS if there's room.