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

##### SUMMARY
<!--- Describe the new feature/improvement briefly below -->
Add new commands to the Redfish remote_management modules to perform firmware update requests.

##### ISSUE TYPE
- Feature Idea

##### COMPONENT NAME
<!--- Write the short name of the module, plugin, task or feature below, use your best guess if unsure -->
redfish_config.py
redfish_utils.py

##### ADDITIONAL INFORMATION
<!--- Describe how the feature would be used, why it is needed and what it would solve -->
Operators need a way to update firmware on Redfish managed systems. Would like an extension made to be able to perform SimpleUpdate actions with a specified firmware image. At the very minimum we can point to a remote HTTP/TFTP/SCP/etc server, but if possible, it might be good to spin up a lightweight HTTP server to service the request in case one isn't provisioned.

<!--- Paste example playbooks or commands between quotes below -->
```yaml
  - name: Pull style update
    redfish_config:
      category: Update
      command: PullUpdate
      image: http://my.file.repo/someimage.bin
      targets:
        - /redfish/v1/Systems/1
        - /redfish/v1/Systems/2
      baseuri: "{{ baseuri }}"
      username: "{{ username }}"
      password: "{{ password }}"
```

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

headers = PATCH_HEADERS
        r = self.get_request(uri)
        if r['ret']:
            
            etag = r['headers'].get('etag')
            if not etag:
                etag = r['data'].get('@odata.etag')
            if etag:
                
                headers = dict(headers)
                headers['If-Match'] = etag
        try:
            resp = open_url(uri, data=json.dumps(pyld),
                            headers=headers, method="PATCH",
                            url_username=self.creds['user'],
                            url_password=self.creds['pswd'],
                            force_basic_auth=True, validate_certs=False,
                            follow_redirects='all',
                            use_proxy=True, timeout=self.timeout)
        except HTTPError as e:
            msg = self._get_extended_message(e)
            return {'ret': False,
                    'msg': "HTTP Error %s on PATCH request to '%s', extended message: '%s'"
                           % (e.code, uri, msg),
                    'status': e.code}
        except URLError as e:
            return {'ret': False, 'msg': "URL Error on PATCH request to '%s': '%s'"
                                         % (uri, e.reason)}