Other Andrew here. (I'm also on the HMC clinic team.)
Basically, the issue is that a lot of the changes we made have been kind of "patch-unfriendly" - we've moved and renamed a lot of files, and that can't really be reflected well by a patch file. (We tried generating a straight patch between our repository and yours, and it ended up being something like 5 MB.)
With that all in mind, though, I'm attaching a REALLY ROUGH patch that simply adds our current version of Zab, as well as its respective tests, to the current SVN trunk revision of Zookeeper. Hopefully this should resolve the legal issues.
What it doesn't do is:
1) It doesn't make Zookeeper use Zab for anything. As a result, there's a lot of duplicated code now - Zookeeper will need to be modified significantly to run against the Zab API. All it does is add a bunch of code to the source tree.
2) It also doesn't port in some of the changes you folks have made to code that's within Zab's ambit. (What's included is basically everything that doesn't involve either clients or the data tree: leader election, proposal handling, and logging/persistence.)
3) Finally, it's not quite complete. We're still working on implementing syncs, as well as doing some further tests.
Hopefully this is enough to start taking a look at, though... we'll keep you updated.