If given, level should be a number from 0 to 9 indicating the
packing / CPU ratio. Zero means no packing, 2-3 is considered 'fast',
6 is default and higher is considered 'slow' but gives better packing.
This function can also be used to re-initialize a Gz.deflate object
so it can be re-used.
If the argument is negative, no headers will be emitted. This is
needed to produce ZIP-files, as an example. The negative value is
then negated, and handled as a positive value.
strategy , if given, should be one of DEFAULT_STRATEGY, FILTERED or
HUFFMAN_ONLY.