relay: add distinction between conversations and connections for DCC

* a conversation can contain one or many connections
* for a chat it has one connection which lasts as long as the conversation lasts
* for a file it could be many connections each of which represents a transfer