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.]
just a optional suggestion, that you may want to add more context to the error (i.e: mentioning GetGroupFile). But that's up to you really.

LGTM for api/server