Rework client-side storage scripts to semi-coexist with mkextrafs uses.
Broke rc.storage into two phases, local blockstores and remote blockstores. Setup of the former will also pick a best candidate for an old-school "extrafs" and put the info in /var/emulab/boot/extrafs. This will be a single line with one of DISK=foo, PART=foo, or FS=foo depending on whether it found an available full disk, disk partition, or mounted filesystem that we can use for mkextrafs (in the first two cases) or where we can mooch off of (the last). This is only used in os_mountextrafs() right now; i.e., I have NOT changed the mkextrafs script. So explicit invocations by the user could still screw things up. I have tested this with local blockstores and a non-nfs experiment on both Linux and FreeBSD to make sure the most common sharing of space works. I have not made any new images and I have not yet tested to make sure I did not break non-blockstore, non-nfs experiments (i.e., where we really should run mkextrafs). So maybe don't make any new images til I get back, or else be prepared to clean up after me.