Add a 'reversible' hash

The idea is that uint32-sized blocks of the data  can be modified and the hash
updated accordingly. No claims WRT hash quality!