Mixin Chat Component
Intercepts every incoming chat message at the lowest level (the private addMessage that all of addClientSystemMessage / addServerSystemMessage / addPlayerMessage funnel into) so JIM's `chat` trigger can read and optionally cancel it.