Split OpenSSL backend into separate files (cipher contexts)

refs #1171
Okay I'll make the change now and save us a 20 hour wait on travis.