updates tar to allow output specification

1. (9446728) This lets users add the to `some_output_file.tar.gz` directive to `compress` commands, specifying output path.
2. (ae93c29, ab03ab6, 68600e9) Expands compression to allow for zip, gzip, and bzip as well as an extended command keyword set. (I know `case`'s are bad, but it's so small the added clarity seemed worth it)