Base of IPNS

Adds the ability to express paths as either a base58 hash, a proquint id, or as a domain name (through a DNS TXT record).
Hey, why is the PeerID removed here? PeerIDs will survive beyond each launch (we don't generate them every time). Identities matter in BitSwap.