Delete resources in XdgOutput teardown
Generated code typically cleans up resource objects when the client calls the relevant destructor. In multi-cast mode our wrapper can be deleted at any time, whilst a client resource exists any existing resources that have a pending message will then crash the compositor. Deleting resources ahead of time also resolves this. calls to this resource will no-op. The zxdg_output_v1::destroy_func will then be called to delete the Resource object.