don't set linger to 0
don't set linger to 0

We should do this from
go-tcp-transport (https://github.com/libp2p/go-tcp-transport/pull/36), not here,
as setting linger to 0 will cause us to send RST packets instead of nicely
closing connections.

Also, document why we need the fallback dialer.

libp2p/go-libp2p,ipfs/go-libp2p,libp2p/go-libp2p