Use namecoin for name resolution. Reasons:
* it's 100% compatible with current web browsers: users just won't be connected to namecoin directly but to a DNS<>namecoin proxy.
* It's tamper and censorship resistant. No-one can remove, alter a record in blockchain.
* It's completely independent: This settles the issue of governance.
* It's completely distributed so it's very difficult to attack via DDoS.
* Governments could still censor the DNS proxies, but people could directly connect to the namecoin network to fix that.
* ICANN could have miners working to finance their operations.