introduce serialization support
add output buffer size template argument to two transcode(…) overloads
digest() functions return std::array rather than raw arrays