Start drafting PeerWire socket opening

This starts to draft the basic data models for the peerwire protocol and
the connection opening logic and interface for it. We need to solve how
serialization and serialization will work out, really, but I think I'm
going to test this at the application level (on the currently private
butter-cli consumer).