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.

How do we prevent random users from getting HostDirectory volumes in read-write mode?  Do we ever need to allow that?  @vmarmol is your usage of HOST volumes read-only?

Maybe we need a function here like "ForceReadOnly() bool" which the mounting code would check and override VolumeMount.ReadOnly.