adding default methods to the Observer interface