add support for compressed data files

to use it, pass ZIP_CODEC or GZIP_CODEC as the last argument to
the DataFileWriter constructor. It requires zlib support in boost
which is not entirely trivial on windows.