recovery: Moved code from dnet_recovery to recovery.py for using/testing it from pytests.
Added 'portable' method to Ctx that returns lightweight copy of the context that can be used by multiprocessing.
Removed monitor from context, left only stats - proxy object for sending updates to monitor from different processes/threads.
Removed using global context, use portable context insead of.
Moved process pool initialization and destruction into common recovery.py - removed duplicating code.