OpenStack as a whole performs innumerable actions asynchronously, and in general leaves other projects in the dark as to those goings on. This affects Horizon especially, but enabling one project to learn about events in another project would be useful in myriad ways. For example:
A tenant is deleted in Keystone; instances are subsequently orphaned and left running in Nova, images are orphaned in Glance, etc. If Keystone sent out a signal when that project were deleted, a concerted cleanup action could take place throughout the entire system...