As people may have noticed from the commits I'm working on separating out the all the hardcoded references to struct disklabel. I'm separating out all the disk management layering code into distinct pieces (slice code, disklabel, partition management).
I might make a mistake, and it could blow something up, like a filesystem, so this is a head's up that the development tree should be considered unstable this week. Eventually this will allow us to implement a pluggable disklabeling scheme (e.g. a 64 bit disklabel or GPT or something like that). I'm just getting some low-hanging fruit out of the way to make it easier later on. GPT looks aweful, but it isn't something I'm going to worry about right now. -Matt