Event's __init__ and notify now accept data parameter and avoid mutable default arguments