Update channel topic when Test Day starts and ends

hi @whimboo !

with apologies for the untidy commit list, suspecting this requires re-forking the repo to fix, and not sure what that would do to existing pull requests

See my other reply regarding the number of channels. Otherwise it seems to be fine if we get the topic listener called when the bot joins the channel.