New net interface

We discussed this over IRC, but addressing here for posterity:
>
 <btc_> primarily for readability. you can drop into the file and, in 6 lines, understand how the entity behaves
6:40 PM <btc_> secondarily, for interface composition. you can see that a BitSwapMessage implements Exportable