Added Observer pattern exercise