Uniform the functions/classes in GzipStream with the ones in ZstdStream.
append
The `GzipTarWriter::append` method erroneously added an empty block of padding when an empty file (size == 0) was supplied. This corrects the algorithm by excluding 512 as a valid padding size.
Add the GzipTarFileWriter and GzipTarReader classes that allow reading a slightly custom `.tar.gz`.