Generic archive unpacker library for C++