Apply --size-hint when compressing to zstd
zstd allocates an excessive amount of memory when compressing small files from stdin at high compression presets. this can be avoided by using --size-hint. the size can be estimated by adding up the size of each file plus the size of the file names plus 106 for each file, but since all the files will most likely fit into RAM, the easiest way is to simply generate the cpio twice: once to get the size, and once to actually compress it.