checkpoint
refactor SyntheticEvent a little bit
refactor it in the right place
Synthetic event serialization works
getting there
omg simple event plugin works