Allow IPC namespace to be shared between containers or with the host

Replaces #8211

Some workloads rely on IPC for communications with other processes.  We
would like to split workloads between two container but still allow them
to communicate though shared IPC.

This patch mimics the --net code to allow --ipc=host to not split off
the IPC Namespace.  ipc=container:CONTAINERID to share ipc between containers

If you share IPC between containers, then you need to make sure SELinux labels
match.

Docker-DCO-1.1-Signed-off-by: Dan Walsh <dwalsh@redhat.com> (github: rhatdan)
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
Example of stack/namespace inconsistency. Also another example of talking only about shared memory, when there are several IPC techniques.