Simple function returning file extension for given compression schema.
It could be easily handled with hash, but I decided to use function, to have explicit die/croak in case of bad compression type.
Wrapper around Digest::MD5 to calculate md5 sum of file.
Returned checksum is hex encoded - like output of md5sum program.
Runs given program, adding proper escapes of values, and gets stdout and stderr of it.
Returns hashref which contains:
stderr - stringified stderr output from program
stdout - stringified stdout output from program
status - return value of system() call
error_code - undef in case there was no error, or stringified error information