Core/messages: New IRC parser.

Signed-off-by: Martin Stone <martin@d7415.co.uk>
(cherry picked from commit fa77d6fd6108c74a8e05e49de9b14cfad78e845c)
!prop: Ensure invite, kick and suggestion proposal IDs do not conflict.

Signed-off-by: Martin Stone <martin@d7415.co.uk>
(cherry picked from commit 829f7fbf34ed3da81bacdf2775f40d9abf0b1aa4)