Yet another LZ77 (public domain, self-contained C++ header file)