Modular Logging System

Allow coders to implement their own logging system.
Perhaps a more generally-useful callback instead of `OnLogCreated` would be `OnBotCreated`?  It could be called on line 177.  You could still do your logging setup there, we'd just have to remove the log statement on line 171.