First working observer
Cleaned up observer - working test case