Rewrite OFMD5Hash

The old one was based on a public domain implementation, which is
optimized for old compilers and quite unreadable. The new one is written
from scratch and designed to be readable and to exploit optimizations of
modern compilers.
Rewrite OFSHA1Hash

The old one was based on a public domain implementation, which is
optimized for old compilers and quite unreadable. The new one is written
from scratch and designed to be readable and to exploit optimizations of
modern compilers.
OF{MD5,SHA1}Hash: Zero _buffer when done

This way, possibly sensitive information is discarded from memory as
soon as possible.
Add OFSHA256Hash

Took me some time to figure out the RFC is buggy and SSIG0(t-15) should
be SSIG0(W(t-15))...