Observer Pattern Example completed