Rather than a save file from standard input and then exiting, this reads it from a shared memory buffer and then loops. This makes fuzzing _much_ faster: one core on my laptop can now load about 30,000 save files per second.
This just feeds save files into the loading code, but because of how Puzzles is structured that actually exercises most of its parsers.