Fix a deadlock between saving and restoring thread for ForkMessage
A deadlock used to happen between saving and restoring thread in production. This patch correct the problem, simplify fork Proxy and add a more complete test about message persistence.