<!--- 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.6.1.5.5.7.7.22': ('id-cmc-popLinkRandom', ),
    '1.3.6.1.5.5.7.7.23': ('id-cmc-popLinkWitness', ),
    '1.3.6.1.5.5.7.7.24': ('id-cmc-confirmCertAcceptance', ),
    '1.3.6.1.5.5.7.8': ('id-on', ),
    '1.3.6.1.5.5.7.8.1': ('id-on-personalData', ),
    '1.3.6.1.5.5.7.8.3': ('Permanent Identifier', 'id-on-permanentIdentifier'),
    '1.3.6.1.5.5.7.9': ('id-pda', ),
    '1.3.6.1.5.5.7.9.1': ('id-pda-dateOfBirth', ),
    '1.3.6.1.5.5.7.9.2': ('id-pda-placeOfBirth', ),
    '1.3.6.1.5.5.7.9.3': ('id-pda-gender', ),
    '1.3.6.1.5.5.7.9.4': ('id-pda-countryOfCitizenship', ),
    '1.3.6.1.5.5.7.9.5': ('id-pda-countryOfResidence', ),
    '1.3.6.1.5.5.7.10': ('id-aca', ),
    '1.3.6.1.5.5.7.10.1': ('id-aca-authenticationInfo', ),
    '1.3.6.1.5.5.7.10.2': ('id-aca-accessIdentity', ),
    '1.3.6.1.5.5.7.10.3': ('id-aca-chargingIdentity', ),
    '1.3.6.1.5.5.7.10.4': ('id-aca-group', ),
    '1.3.6.1.5.5.7.10.5': ('id-aca-role', ),
    '1.3.6.1.5.5.7.10.6': ('id-aca-encAttrs', ),
    '1.3.6.1.5.5.7.11': ('id-qcs', ),
    '1.3.6.1.5.5.7.11.1': ('id-qcs-pkixQCSyntax-v1', ),
    '1.3.6.1.5.5.7.12': ('id-cct', ),
    '1.3.6.1.5.5.7.12.1': ('id-cct-crs', ),
    '1.3.6.1.5.5.7.12.2': ('id-cct-PKIData', ),
    '1.3.6.1.5.5.7.12.3': ('id-cct-PKIResponse', ),
    '1.3.6.1.5.5.7.21': ('id-ppl', ),
    '1.3.6.1.5.5.7.21.0': ('Any language', 'id-ppl-anyLanguage'),
    '1.3.6.1.5.5.7.21.1': ('Inherit all', 'id-ppl-inheritAll'),
    '1.3.6.1.5.5.7.21.2': ('Independent', 'id-ppl-independent'),
    '1.3.6.1.5.5.7.48': ('id-ad', ),