Add selinux.Chcon and label.Relabel functions for fixing labels on volume mounts

Chcon will walk a directory tree and change the labels on the contents to the
specified label.

label.Relabel will call chcon with the default label or force the label to "s0" in
selinux which differentiates between a non shared label and a shared label in containers.

Docker-DCO-1.1-Signed-off-by: Dan Walsh <dwalsh@redhat.com> (github: rhatdan)
Automatically relabel volume mounts if user passes :Z on -v command

When you volume mount into a labeled container, we want to allow the
administrator/user the ability to tell docker to fix the labels on the mount.

:Z will set the labels so that only the processes within the container can
read/write content.  Since the labels change on creation, this can not be done
by the administrator prior to running the container

:z will change the labels so all containers could read/write content.

Docker-DCO-1.1-Signed-off-by: Dan Walsh <dwalsh@redhat.com> (github: rhatdan)