##### 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)
```
if san.startswith('IP Address:'):
            san = 'IP:' + san[len('IP Address:'):]
        if san.startswith('IP:'):
            ip = compat_ipaddress.ip_address(san[3:])
            san = 'IP:{0}'.format(ip.compressed)
        return san
    def _check_csr(self):
        def _check_subject(csr):
            subject = [(OpenSSL._util.lib.OBJ_txt2nid(to_bytes(sub[0])), to_bytes(sub[1])) for sub in self.subject]
            current_subject = [(OpenSSL._util.lib.OBJ_txt2nid(to_bytes(sub[0])), to_bytes(sub[1])) for sub in csr.get_subject().get_components()]
            if not set(subject) == set(current_subject):
                return False
            return True
        def _check_subjectAltName(extensions):
            altnames_ext = next((ext for ext in extensions if ext.get_short_name() == b'subjectAltName'), '')
            altnames = [self._normalize_san(altname.strip()) for altname in
                        to_text(altnames_ext, errors='surrogate_or_strict').split(',') if altname.strip()]
            if self.subjectAltName:
                if (set(altnames) != set([self._normalize_san(to_text(name)) for name in self.subjectAltName]) or
                        altnames_ext.get_critical() != self.subjectAltName_critical):
                    return False
            else:
                if altnames:
                    return False
            return True
        def _check_keyUsage_(extensions, extName, expected, critical):