Note: this is a work in progress, there are some minor code issues still left to address
This allows one to create a ZFS pool out of a directory tree. It's
intended to be used to build VM images so that users can take advantage
of the features of ZFS as a root filesystem.
The goals of the implementation are to:
1. provide reproducible images
2. not require any special privileges to create the image
3. be reasonably fast
The implementation makes use of some ZFS code from the loader,
specifically a small nvlist implementation, fletcher4 and SHA
implementations for checksums, and zfsimpl.h. There is no dependency on
OpenZFS for now, so this will hopefully be easy to maintain.