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.

The previous implementation for mounting host directories is handled entirely in the VolumeMount with Volumes pretty much left unused. I left that implementation intact, but using the Volume struct should be preferred.