Update vendor'd `libcontainer` and update to use new `user` interface.

This patchset transitions the use of the old libcontainer/user interface
to the new and improved libcontainer/user interface (also updating the
hack/vendor.sh script to use libcontainer:4ae31b6ceb2c2557c9f05f42da61b0b808faa5a4).

Signed-off-by: Aleksa Sarai cyphar@cyphar.com (github: cyphar)

/cc @vieux @tianon 

[This is a dup of docker#7591, but my commits won't update when `--force`ing my rebases, so just use this one instead.]
@proppy The error was written like that because if an operating system doesn't provide a `/etc/group`-like file it doesn't provide any `passwd`-formatted data. There's nothing unique to the error about `GetGroupFile`.