Treat Int as unsigned in C codegen when zero-extending to Integer

This brings behavior into line with zext to fixed width integers and zext in the LLVM codegen, and ensures that cases where an Int wraps a size_t lose a minimum of information.