add rsa_generate_private_key function to replace RSAPrivateKey.generate

refs #1026. #1101 is dependent on this
fix coverage
more coverage...
add some missing docs
rename the function
rename the docs too.
Merge pull request #1102 from reaperhulk/rsa-generate-function

add rsa_generate_private_key function to replace RSAPrivateKey.generate