I think alot of the functionality we want in relays is better off as separate services. This isn't to say relays can't do anything clever, but the more we rely on relays to provide these services, the more centralization risk exists.
Discussion
If you're concerned with centralization of one implementation. Strfry is running on most major relays. This is why we want more.