One of these should have `events=['new']` and the other `events=['complete']`.

Also, this seems like it is going to be the typical usage of selector, and it seems like there could be better factoring between `Selector` and `MessageValidator` to handle different message possibilities.