That's pretty interesting question. We've done a lot of experimenting about how to provide location transparency (using symbolic rather than physical addresses in bind & connect).
At the moment the idea is that symbolic name resolving can be offloaded to the DNS. Also recall that domain name resolving (at least on Linux) doesn't mean DNS alone. You can hook into it quite easily. You can even plug in an LDAP server, so you can define your endpoints in a directory service. Anyway, the whole topic needs more thinking and design work.