##### SUMMARY
Some of the modules still return something in `ansible_facts`, even though the result in there is an empty list:
 - ~~`azure_rm_publicipaddress_info`~~
 - ~~`azure_rm_networkinterface_info`~~
 - `azure_rm_storageaccount_info`
 - `azure_rm_virtualmachineimage_info`
 - `azure_rm_virtualmachinescaleset_info`
 - `azure_rm_virtualnetwork_info`

Finally, `azure_rm_resourcegroup_info` always returns `ansible_facts` with content (which is also returned as non-`ansible_facts`).

When called as `_info` modules, these modules should not have anything in `ansible_facts` when returning.

##### ISSUE TYPE
- Bug Report

##### COMPONENT NAME
~~azure_rm_publicipaddress_info~~
~~azure_rm_networkinterface_info~~
azure_rm_resourcegroup_info
azure_rm_storageaccount_info
azure_rm_virtualmachineimage_info
azure_rm_virtualmachinescaleset_info
azure_rm_virtualnetwork_info

##### ANSIBLE VERSION
```paste below
2.9
```

self.log('List all items')
        try:
            response = self.rm_client.resource_groups.list()
        except CloudError as exc:
            self.fail("Failed to list all items - {0}".format(str(exc)))
        results = []
        for item in response:
            if self.has_tags(item.tags, self.tags):
                results.append(self.serialize_obj(item, AZURE_OBJECT_CLASS))
        return results
    def list_by_rg(self, name):
        self.log('List resources under resource group')
        results = []
        try:
            response = self.rm_client.resources.list_by_resource_group(name)
            while True:
                results.append(response.next().as_dict())
        except StopIteration:
            pass
        except CloudError as exc:
            self.fail('Error when listing resources under resource group {0}: {1}'.format(name, exc.message or str(exc)))
        return results
def main():
    AzureRMResourceGroupInfo()
if __name__ == '__main__':
    main()