##### SUMMARY
The delete operation of the `lightsail` module is not idempotent. If the instance is already deleted, then the task generates a traceback.

```
Traceback (most recent call last):
  File "ansible/modules/cloud/amazon/lightsail.py", line 458, in main
  File "ansible/modules/cloud/amazon/lightsail.py", line 422, in core
  File "ansible/module_utils/common/dict_transformations.py", line 42, in camel_dict_to_snake_dict
    for k, v in camel_dict.items():
AttributeError: 'NoneType' object has no attribute 'items'
```

##### ISSUE TYPE
- Bug Report

##### COMPONENT NAME
`lightsail`

##### ANSIBLE VERSION
<!--- Paste verbatim output from "ansible --version" between quotes -->
```paste below
ansible 2.10.0.dev0
```

##### CONFIGURATION
<!--- Paste verbatim output from "ansible-config dump --only-changed" between quotes -->
```paste below
nothing
```

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

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

<!--- Paste example playbooks or commands between quotes below -->
```yaml
- lightsail:
    state: absent
    name: my_instance
```

##### EXPECTED RESULTS
<!--- Describe what you expected to happen when running the steps above -->
Task successfully returns with `changed: false`.

##### ACTUAL RESULTS
<!--- Describe what actually happened. If possible run with extra verbosity (-vvvv) -->
Instead this traceback is generated - 
<!--- Paste verbatim command output between quotes -->
```paste below
Traceback (most recent call last):
  File "ansible/modules/cloud/amazon/lightsail.py", line 458, in main
  File "ansible/modules/cloud/amazon/lightsail.py", line 422, in core
  File "ansible/module_utils/common/dict_transformations.py", line 42, in camel_dict_to_snake_dict
    for k, v in camel_dict.items():
AttributeError: 'NoneType' object has no attribute 'items'

```

region, ec2_url, aws_connect_kwargs = get_aws_connection_info(module, boto3=True)
    if not region:
        module.fail_json(msg='region must be specified')
    client = None
    try:
        client = boto3_conn(module, conn_type='client', resource='lightsail',
                            region=region, endpoint=ec2_url, **aws_connect_kwargs)
    except (botocore.exceptions.ClientError, botocore.exceptions.ValidationError) as e:
        module.fail_json(msg='Failed while connecting to the lightsail service: %s' % e, exception=traceback.format_exc())
    changed = False
    state = module.params['state']
    name = module.params['name']
    if state == 'absent':
        changed, instance_dict = delete_instance(module, client, name)
    elif state in ('running', 'stopped'):
        changed, instance_dict = startstop_instance(module, client, name, state)
    elif state == 'restarted':
        changed, instance_dict = restart_instance(module, client, name)
    elif state == 'present':
        changed, instance_dict = create_instance(module, client, name)
    module.exit_json(changed=changed, instance=camel_dict_to_snake_dict(instance_dict))
def _find_instance_info(client, instance_name):
    ''' handle exceptions where this function is called '''
    inst = None
    try:
        inst = client.get_instance(instanceName=instance_name)
    except botocore.exceptions.ClientError as e:
        raise
    return inst['instance']
def main():