Fix a significant memory leak.

As of writing, each validation run leaked around 180MB.

This commit fixes the memory leak because the supplied sequence can
(and is, in the case of the main application) be a lazy stream.
Such streams map lazily, and each element references the other
elements in the stream. This means that 'patching' via map leads
to all previous elements in the stream being retained indefinitely.
This application attaches the results of validation runs to these
elements, meaning that all validation results were being preserved
indefinitely and not garbage collected.