represent uid/gid as uint32, not uint16

this allows uid pools higher than 64k to work, as is often hit when
running Warden on each node of a test suite

e.g. uid pool start = 10000 * parallel-node

Signed-off-by: Simon Leung <leungs@us.ibm.com>
improve integration test to cover recursive dirs

Signed-off-by: Simon Leung <leungs@us.ibm.com>
stream in to the container using the host's tar

previously we were trusting the container's tar binary to do the right
thing, executing it with pretty high privileges. this is a very bad
idea.

now we execute the host's (trusted) 'tar', and extract into the
destination in the container.

this also removes the dependency on nsenter.

[#77414660]

Signed-off-by: Simon Leung <leungs@us.ibm.com>