<!--- Verify first that your feature was not already discussed on GitHub -->
<!--- Complete *all* sections as described, this form is processed automatically -->

##### SUMMARY
Allow to specify a new "format" parameter in "openssl_privatekey". Today the output format is decided by a very simple heuristic which requires further commands to work properly.
I need, for example, to generate a RSA private key but in PKCS8 format. The current heuristic uses OpenSSH format for RSA keys and only uses PKCS8 for Ed25519 and similar. This makes me use a "command" with "openssl" to convert the generated key, which leads to idempotency problems and unnecessary complexity.

##### ISSUE TYPE
- Feature Idea

##### COMPONENT NAME
openssl_privatekey

##### ADDITIONAL INFORMATION
<!--- Describe how the feature would be used, why it is needed and what it would solve -->
The current heuristic should be kept unless overwritten by user.

<!--- Paste example playbooks or commands between quotes below -->
```yaml
openssl_privatekey:
  path: /etc/ssl/private/ansible.com.pem
  format: pkcs8
```
The values allowed are `pkcs1`, `raw` and `pkcs8`

<!--- HINT: You can also paste gist.github.com links for larger files -->

'1.3.14.3.2.9': ('des-cfb', 'DES-CFB'),
    '1.3.14.3.2.11': ('rsaSignature', ),
    '1.3.14.3.2.12': ('dsaEncryption-old', 'DSA-old'),
    '1.3.14.3.2.13': ('dsaWithSHA', 'DSA-SHA'),
    '1.3.14.3.2.15': ('shaWithRSAEncryption', 'RSA-SHA'),
    '1.3.14.3.2.17': ('des-ede', 'DES-EDE'),
    '1.3.14.3.2.18': ('sha', 'SHA'),
    '1.3.14.3.2.26': ('sha1', 'SHA1'),
    '1.3.14.3.2.27': ('dsaWithSHA1-old', 'DSA-SHA1-old'),
    '1.3.14.3.2.29': ('sha1WithRSA', 'RSA-SHA1-2'),
    '1.3.36.3.2.1': ('ripemd160', 'RIPEMD160'),
    '1.3.36.3.3.1.2': ('ripemd160WithRSA', 'RSA-RIPEMD160'),
    '1.3.36.3.3.2.8.1.1.1': ('brainpoolP160r1', ),
    '1.3.36.3.3.2.8.1.1.2': ('brainpoolP160t1', ),
    '1.3.36.3.3.2.8.1.1.3': ('brainpoolP192r1', ),
    '1.3.36.3.3.2.8.1.1.4': ('brainpoolP192t1', ),
    '1.3.36.3.3.2.8.1.1.5': ('brainpoolP224r1', ),
    '1.3.36.3.3.2.8.1.1.6': ('brainpoolP224t1', ),
    '1.3.36.3.3.2.8.1.1.7': ('brainpoolP256r1', ),
    '1.3.36.3.3.2.8.1.1.8': ('brainpoolP256t1', ),
    '1.3.36.3.3.2.8.1.1.9': ('brainpoolP320r1', ),
    '1.3.36.3.3.2.8.1.1.10': ('brainpoolP320t1', ),
    '1.3.36.3.3.2.8.1.1.11': ('brainpoolP384r1', ),
    '1.3.36.3.3.2.8.1.1.12': ('brainpoolP384t1', ),
    '1.3.36.3.3.2.8.1.1.13': ('brainpoolP512r1', ),
    '1.3.36.3.3.2.8.1.1.14': ('brainpoolP512t1', ),
    '1.3.36.8.3.3': ('Professional Information or basis for Admission', 'x509ExtAdmission'),
    '1.3.101.1.4.1': ('Strong Extranet ID', 'SXNetID'),
    '1.3.101.110': ('X25519', ),
    '1.3.101.111': ('X448', ),