Make persisting results configurable so we can mix and match persisting fns.

This is a lot like how telemtry modules, only not at all. It's much simpler, but
it is the same concept.