Parse event id for all events; timestamp for all except typing and receipts
Parse event id for all events; timestamp for all except typing and receipts

This is not quite correct because only room events are guaranteed by the spec to have an id and a timestamp. But we don't parse all room events as of yet, so that's a way to at least make those attributes universally available for even unknown room events. It matters, because read receipts can refer to any room event id and because we'll use event id's to filter out duplicate events in further commits; and missing timestamps used to break the timeline display (showing <> instead of <valid timestamps>).

QMatrixClient/libqmatrixclient,QMatrixClient/libqmatrixclient,Fxrh/libqmatrixclient