tests: fix compile
ocamlbuild: clean _tags file
gen unix io: get rid of `underlying' field
unix: complete rewrite of the i/o system

DEFLATE compression works again.

The same system could be used to provide compression to the
Lwt and Async backends.  But maybe there a more `native' solution is
possible without too much difficulty (using Cryptokit directly).