CUniquePtr
Add a helper using of `std::unique_ptr` that allows easier wrapping of C pointer with destructors.
Implement the `zstdCompress` and `zstdDecompress` functions. Also implement the `ZstdCompressedOstream` which is a `llvm::raw_ostream` which compresses data on the fly.