Right now there are a few things that involve disks:
- sandbox creation
- disk space monitoring
- garbage collection
These operations should probably be abstracted out into some sort of disk isolator / disk manager, e.g. allocate / getsize / deallocate. For example an allocate implementation may dynamically create ZFS pools across multiple spindles from a 'spindle' resource type and mount that as the sandbox for a task.