id: use libc::{uid_t,gid_t} where appropriate
whoami: use libc::uid_t where appropriate
c_types: handle errors from getgroups()/getgrouplist()