##### SUMMARY
Setting [openssl_csr](https://docs.ansible.com/ansible/latest/modules/openssl_csr_module.html)'s `version` parameter has no effect in ansible 2.8.4; it always remains the default (1).

##### ISSUE TYPE
- Bug Report

##### COMPONENT NAME
openssl_csr

##### ANSIBLE VERSION
```
ansible 2.8.4
config file = /etc/ansible/ansible.cfg
configured module search path = [u'/home/bilge/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python2.7/dist-packages/ansible
executable location = /usr/bin/ansible
python version = 2.7.15+ (default, Nov 27 2018, 23:36:35) [GCC 7.3.0]
```

##### CONFIGURATION

```yaml
- name: Generate CSR
  openssl_csr:
    privatekey_path: /tmp/private.pem
    path: /tmp/csr
    subject_alt_name: DNS:example.com
    version: 3
```

##### EXPECTED RESULTS

```
Certificate Request:
    Data:
        Version: 3 (0x2)
```

##### ACTUAL RESULTS

>$ openssl req -in /tmp/csr -noout -text

```
Certificate Request:
    Data:
        Version: 1 (0x0)
```
extensions.append(crypto.X509Extension(b"subjectAltName", self.subjectAltName_critical, altnames.encode('ascii')))
            except OpenSSL.crypto.Error as e:
                raise CertificateSigningRequestError(
                    'Error while parsing Subject Alternative Names {0} (check for missing type prefix, such as "DNS:"!): {1}'.format(
                        ', '.join(["{0}".format(san) for san in self.subjectAltName]), str(e)
                    )
                )
        if self.keyUsage:
            usages = ', '.join(self.keyUsage)
            extensions.append(crypto.X509Extension(b"keyUsage", self.keyUsage_critical, usages.encode('ascii')))
        if self.extendedKeyUsage:
            usages = ', '.join(self.extendedKeyUsage)
            extensions.append(crypto.X509Extension(b"extendedKeyUsage", self.extendedKeyUsage_critical, usages.encode('ascii')))
        if self.basicConstraints:
            usages = ', '.join(self.basicConstraints)
            extensions.append(crypto.X509Extension(b"basicConstraints", self.basicConstraints_critical, usages.encode('ascii')))
        if self.ocspMustStaple:
            extensions.append(crypto.X509Extension(OPENSSL_MUST_STAPLE_NAME, self.ocspMustStaple_critical, OPENSSL_MUST_STAPLE_VALUE))
        if extensions:
            req.add_extensions(extensions)
        req.set_pubkey(self.privatekey)
        req.sign(self.privatekey, self.digest)
        self.request = req
        return crypto.dump_certificate_request(crypto.FILETYPE_PEM, self.request)
    def _load_private_key(self):
        try:
            self.privatekey = crypto_utils.load_privatekey(self.privatekey_path, self.privatekey_passphrase)
        except crypto_utils.OpenSSLBadPassphraseError as exc:
            raise CertificateSigningRequestError(exc)
    def _normalize_san(self, san):