Split OpenSSL backend into separate files (hashes)

completes #1171