Refine API and protocol
This PR contains the following API improvements:
- Rename
copy_free
tozero_copy
. Fixes #1 (closed). - Add argument for number of compression options. Fixes #2 (closed).
- Require compression options in protocol metadata
It is still not possible to change default compression options during serialization. Where possible without additional work (lz4, deflate), non-default compression options are supported during deserialization.
While using a list of integers for the compression options in the protocol metadata looks reasonable, a future PR might add a more human friendly API to the library.