Two new data types: `DbusMention` (created by @0b11001111) and `DbusAttachment`.
Two new signals, `MessageReceivedV2` and `SyncMessageReceivedV2`.
This is to address #671#316#658 and #491, in particular addressing the issues raised by @AsamK in #658.
The new signals provide the new data structures to the user program, while the existing signals, `MessageReceived` and `SyncMessageReceived`, continue to provide the old data types (with no information about mentions or attachment metadata).
As a result, for each message received, two signals will be emitted: the legacy signal and the V2 signal. Existing (old-style) programs will not see the V2 signal, and so nothing will break. New programs can ignore the legacy signal and process the enhanced data.