+per WIP on persistAsync

I believe I got the semantics right, but need to cleanup and possibly it
can be done not with a Map but a plain List. Need to investigate more..

Refs #15227