You removed `_earlyEvents` in favour of `_earlyMessages`, I wonder if is there any specific reason? In my mind "messages" are "events" with type "message", so sounds more clear to me have `_earlyEvents`. However I know that internally we do some mess, that's why I'm asking what makes you decided to use `_earlyMessages` instead.

Notice also that `_earlyEvents` was already used, and we should avoid to replace code if it's not really needed. Of course if it's needed – e.g. it's more self-explained – it's welcome :)