Add User Namespace support to libcontainer.

I have split the libcontainer changes from this PR https://github.com/dotcloud/docker/pull/6111 into this PR.
This PR depends upon this change -- https://github.com/dotcloud/docker/pull/6417

I want to get feedback on the implementation and the UI. For using this see https://github.com/dotcloud/docker/pull/6111 changes to the docker side. 

The changes allow one to specify UID/GID Mappings and also the user on host that will be mapped to root within the container. The UI can be tweaked on feedback.

 Docker-DCO-1.1-Signed-off-by: Mrunal Patel <mrunalp@gmail.com> (github: mrunalp)
nit: Can we do:

if userNsEnabled {
  ...
} else {
  ...
}

Seems more readable. I would also put all the code in there (duplicating RestoreParentDeathSignal).