Support for traditional OpenSSL and PKCS8 RSA private key serialization

This temporarily uses the backend to do it until the alternate approach is ready. DSA/ECDSA and public key support will follow if this is deemed worthy.
When reading the BIO it sets the `char **` to the start of the BIO and returns the length in bytes so there's no copy and the BIO still owns that memory (and therefore it is freed when BIO_free is called).