Restructure Observer pattern as of issue #34
Merge pull request #51 from sergeylukin/observer-pattern-restructure

Restructure Observer pattern as of issue #34