Initial framework for external volumes. 

Lays the framework for external volume mounts, preparing for 
persistent disks and other volumes.

Currently, it only supports host directory mounts.

Modifies the API to support host directory mounts from Volumes
instead of VolumeMounts.

I gather the idea is that implementors might make a temporary directory? I was initially confused by this. It seems like the temporary directory making/removing code ought to be centralized here in this package.