##### 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)
```
pass
    def generate(self, module):
        '''Generate the certificate signing request.'''
        if not self.check(module, perms_required=False) or self.force:
            result = self._generate_csr()
            if self.backup:
                self.backup_file = module.backup_local(self.path)
            crypto_utils.write_file(module, result)
            self.changed = True
        file_args = module.load_file_common_arguments(module.params)
        if module.set_fs_attributes_if_different(file_args, False):
            self.changed = True
    @abc.abstractmethod
    def _load_private_key(self):
        pass
    @abc.abstractmethod
    def _check_csr(self):