DHT PR

This PR will be for CR and conversation on the DHT.
not sure but is it worth swapping the definitions? i.e. use the native `pDHTMessage` everywhere in the DHT, and only use a  `pDHTMessage` object when {un,}marshalling. kind of how `merkledag.{Node,PBNode}` work?