Hostname resolution for peers

Add infrastructure to allow peers to asynchronously resolve hostnames