moved to Nov2012 compiler, improved observer pattern, added unit test for it