* Libdraw
	- bug with discovery of initial window size in certain cases
	  (reported by Sean Dorward)

* upas/fs+Mail
	- with 9P infrastructure, should "just work".

* Venti
	- wrote new venti library; server uses it and runs
	- vac needs to be changed to use new library
	- need way to mount vacs.  have all the code for a /vac file
	  system (e.g., cd /vac/68b329da9893e34099c7d8ad5cb9c940da9393e3)
	  but need to put it together.
	- need to buffer writes sensibly in server.  have plan, need to implement.

* Dump
	- have a dump file system that sits on the side of ffs,
	  backing up disk images to venti.  a loopback NFS server
	  serves the backed-up images.  
	  needs cleanup and release.  should be easy to add ext2,
	  fat.  ntfs harder but possible.

