C2 is currently in it's infancy stage - and as yet, cannot actually store files - but the LZ78 code is fully functional (albeit, doesn't return in exactly the desired final format, yet). The LZ78 implementation I've written is tested with standard (a-z, A-Z, 0-9, symbols, space) characters, and I assume all characters (including un-printable ones) will function correctly in and out of the implementation. Please let me know if it throws back any hiccups!
As ComputerCraft does not support binary operations natively, such as :seek() or :getSize(), I've also written a "file.binary" handler wrapper - which also requires work, admittedly, but functions like a binary file in buffer.
You can take a peek at the development-code here at my GitHub - if you want to test the speed of C2, you can use the "packtest" script, or, if you want to use/fiddle with the LZ78 implementation, "comptest" is your friend. Please be aware I'll most likely be changing the LZ78's output to return "flattened-binary" and not it's current disgusting table - and that stuff in these API's/code is not guaranteed to stay as it is now.
Ninja-edit: Forgot this - if you don't want to download, here's a preview of compression: