<!--- Verify first that your issue is not already reported on GitHub -->
<!--- Also test if the latest release and devel branch are affected too -->
<!--- Complete *all* sections as described, this form is processed automatically -->

##### SUMMARY
<!--- Explain the problem briefly below -->
With `init: true` set in the `docker_container` module, a container restarted with `docker_container` loses it network settings and is attached to the default bridge again.

##### ISSUE TYPE
- Bug Report

##### COMPONENT NAME
<!--- Write the short name of the module, plugin, task or feature below, use your best guess if unsure -->
* `docker_container`

##### ANSIBLE VERSION
<!--- Paste verbatim output from "ansible --version" between quotes -->
```paste below
ansible 2.8.4
  config file = /home/.../.../ansible.cfg
  configured module search path = ['/home/.../.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python3.7/site-packages/ansible
  executable location = /usr/bin/ansible
  python version = 3.7.4 (default, Jul 16 2019, 07:12:58) [GCC 9.1.0]
```

##### CONFIGURATION
<!--- Paste verbatim output from "ansible-config dump --only-changed" between quotes -->
Default configuration without any changes.

##### OS / ENVIRONMENT
<!--- Provide all relevant information below, e.g. target OS versions, network device firmware, etc. -->
* ArchLinux

##### STEPS TO REPRODUCE
<!--- Describe exactly how to reproduce the problem, using a minimal test-case -->

<!--- Paste example playbooks or commands between quotes below -->
```yaml
---
- name: create test container
  hosts: localhost 
  gather_facts: false
  become: true
  tasks:

    - name: create a network
      docker_network:
        name: special

    - name: create a container with init set to true
      docker_container:
        name: 'test'
        state: started
        pull: true
        init: true
        image: 'traefik'
        restart_policy: always
        networks_cli_compatible: true
        networks:
          - name: special

    - name: restart test container after creation
      docker_container:
        name: 'test'
        state: started
        restart: true

...
```

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

##### EXPECTED RESULTS

The container should be restarted with the same settings and the diff should show the same as with `init: false`:
```
TASK [restart test container after creation] **************************************************
--- before
+++ after
@@ -1,4 +1,4 @@
 {
-    "restarted": false,
+    "restarted": true,
     "running": true
 }
```

`docker inspect` still shows the custom network to be configured:
```
$ docker inspect test -f "{{ .NetworkSettings.Networks }}"                                                                      
map[special:0xc00056a000]
```

##### ACTUAL RESULTS
```paste below
TASK [restart test container after creation] **************************************************
--- before
+++ after
@@ -1,4 +1,4 @@
 {
-    "init": true,
+    "init": false,
     "running": true
 }
```

`docker inspect` confirms that container has lost its custom network:
```
$ docker inspect test -f "{{ .NetworkSettings.Networks }}"                                                                      
map[bridge:0xc0001f0f00]
```
if mount_dict.get(option) is not None and datatype != req_datatype:
                    self.client.fail('{0} cannot be specified for mount "{1}" of type "{2}" (needs type "{3}")'.format(option, target, datatype, req_datatype))
            
            volume_driver = mount_dict.pop('volume_driver')
            volume_options = mount_dict.pop('volume_options')
            if volume_driver:
                if volume_options:
                    volume_options = clean_dict_booleans_for_docker_api(volume_options)
                mount_dict['driver_config'] = docker_types.DriverConfig(name=volume_driver, options=volume_options)
            if mount_dict['labels']:
                mount_dict['labels'] = clean_dict_booleans_for_docker_api(mount_dict['labels'])
            if mount_dict.get('tmpfs_size') is not None:
                try:
                    mount_dict['tmpfs_size'] = human_to_bytes(mount_dict['tmpfs_size'])
                except ValueError as exc:
                    self.fail('Failed to convert tmpfs_size of mount "{0}" to bytes: {1}'.format(target, exc))
            if mount_dict.get('tmpfs_mode') is not None:
                try:
                    mount_dict['tmpfs_mode'] = int(mount_dict['tmpfs_mode'], 8)
                except Exception as dummy:
                    self.client.fail('tmp_fs mode of mount "{0}" is not an octal string!'.format(target))
            
            mount_expected = dict(mount)
            mount_expected['tmpfs_size'] = mount_dict['tmpfs_size']
            mount_expected['tmpfs_mode'] = mount_dict['tmpfs_mode']
            
            mounts_list.append(docker_types.Mount(**mount_dict))
            mounts_expected.append(omit_none_from_dict(mount_expected))
        return mounts_list, mounts_expected
    def _process_rate_bps(self, option):