This is the completion of a major cleanup. The compressed file code is now somewhat better organised. As a result, I have been able to fully implement the gzip mapping code, including starting deflating in the middle of the block (zsync-0.0.6 had to deflate from the start of a block). I have updated chapter 5 of the technical paper with my latest test results. This is also the first update to the paper since fixing the extra-block-download bug a couple of releases ago — zsync is very close to rsync now, and beats it by a good margin for gzipped data.
I have dropped the OpenSSL dependency. This was an awkward compile time requirement, as many Linux distributions do not install its headers by default. Well, awkward given I only used a couple of checksum algorithms, anyway. I have switched to some public domain MD4 and SHA1 code from OpenBSD's libc. This also solves a problem that zsync-0.0.6 could have been awkward to distribute, as the OpenSSL license conflicts with the GPL.
Finally, I have switched to the Artistic License (version 2) as of 0.1.0. It's a much less restrictive license — essentially you are free to use it and modify it how you will, provided my copyright is respected, the acknowledgements stay in place, and you respect that the open-source version of zsync remains the official one. But see the COPYING file for the details.