Rfc6979

Implement RFC 6979 deterministic signatures. This also indroduces the data_slice abstraction, which makes data_chunk and byte_array interchangeable for use as hash parameters.