note: i'm writing this after not working on this project for 6 months so i'm kind of figuring this out for myself anyway pylon: a chat server that wilson makes a connection to which could be "some irc server", "some xmpp server" or "discord" (discord is centralized so there's only 1 discord to connect to) note that discord's concept of "server" aka "guild" is unrelated to anything channel: a particular chatroom on a particular service eg "#a on apionet" or "#general in some discord guild" in the code, a channel is identified by a combination of a pylon, and a string 'channel descriptor', whose format depends on the pylon type for instance xmpp channel descriptors are jids, discord uses numeric ids bus: a family of connected channels that messages will be bridged between