net-io

(after #442)

This PR changes net to use `io` instead of channels.
At the moment it's just `conn`, but soon more.
seems like this all want to be in a package called `peernet`. All of them seem to be adding `peer.Peer` functionality.