Reorganize tests.
Support concurrent access

`with_file` and its variants enable de-/serialization von multiple threads or processes using the same file.
Fix serialization.
Update documentation.