Adding chapter Two implementation - observer pattern