Index: src/Parser/ChangeTracker.cpp
===================================================================
--- src/Parser/ChangeTracker.cpp	(revision 23fd4308ecfb01cade133b122c6e3e4b440e3141)
+++ src/Parser/ChangeTracker.cpp	(revision 006e1ed7d5cc4416cfbfad21491bcfc0fcdda3ce)
@@ -20,8 +20,10 @@
 #include "CodePatterns/MemDebug.hpp"
 
-#include "Parser/ChangeTracker.hpp"
+#include "Atom/AtomObserver.hpp"
 #include "CodePatterns/Singleton_impl.hpp"
 #include "CodePatterns/Log.hpp"
 #include "CodePatterns/Verbose.hpp"
+#include "Parser/ChangeTracker.hpp"
+#include "World.hpp"
 
 /**
@@ -33,4 +35,5 @@
 {
   World::getInstance().signOn(this);
+  AtomObserver::getInstance().signOn(this);
 }
 
@@ -38,5 +41,7 @@
  * Destructor. Signs off from the World.
  */
-ChangeTracker::~ChangeTracker() {
+ChangeTracker::~ChangeTracker()
+{
+  AtomObserver::getInstance().signOff(this);
   World::getInstance().signOff(this);
 }
Index: src/Parser/ChangeTracker.hpp
===================================================================
--- src/Parser/ChangeTracker.hpp	(revision 23fd4308ecfb01cade133b122c6e3e4b440e3141)
+++ src/Parser/ChangeTracker.hpp	(revision 006e1ed7d5cc4416cfbfad21491bcfc0fcdda3ce)
@@ -15,8 +15,6 @@
 
 
-#include "CodePatterns/Observer/Observer.hpp"
-#include "World.hpp"
-
-using namespace std;
+#include "CodePatterns/Observer/Observable.hpp"
+#include "CodePatterns/Singleton.hpp"
 
 /**
@@ -37,5 +35,4 @@
 private:
   bool isConsistent;
-  static ChangeTracker* instance;
 
   // private constructor and destructor due to singleton
Index: src/Parser/unittests/ParserMpqcUnitTest.cpp
===================================================================
--- src/Parser/unittests/ParserMpqcUnitTest.cpp	(revision 23fd4308ecfb01cade133b122c6e3e4b440e3141)
+++ src/Parser/unittests/ParserMpqcUnitTest.cpp	(revision 006e1ed7d5cc4416cfbfad21491bcfc0fcdda3ce)
@@ -26,12 +26,13 @@
 #include <boost/any.hpp>
 
-#include "World.hpp"
 #include "Atom/atom.hpp"
+#include "Atom/AtomObserver.hpp"
+#include "CodePatterns/Assert.hpp"
+#include "Descriptors/AtomTypeDescriptor.hpp"
 #include "Element/element.hpp"
 #include "Element/periodentafel.hpp"
-#include "Descriptors/AtomTypeDescriptor.hpp"
-#include "CodePatterns/Assert.hpp"
 #include "Parser/ChangeTracker.hpp"
 #include "Parser/MpqcParser.hpp"
+#include "World.hpp"
 
 #ifdef HAVE_TESTRUNNER
@@ -178,4 +179,5 @@
   delete parser;
   ChangeTracker::purgeInstance();
+  AtomObserver::purgeInstance();
   World::purgeInstance();
 }
Index: src/Parser/unittests/ParserPcpUnitTest.cpp
===================================================================
--- src/Parser/unittests/ParserPcpUnitTest.cpp	(revision 23fd4308ecfb01cade133b122c6e3e4b440e3141)
+++ src/Parser/unittests/ParserPcpUnitTest.cpp	(revision 006e1ed7d5cc4416cfbfad21491bcfc0fcdda3ce)
@@ -24,12 +24,13 @@
 #include <cppunit/ui/text/TestRunner.h>
 
-#include "World.hpp"
 #include "Atom/atom.hpp"
+#include "Atom/AtomObserver.hpp"
+#include "CodePatterns/Log.hpp"
+#include "Descriptors/AtomTypeDescriptor.hpp"
 #include "Element/element.hpp"
 #include "Element/periodentafel.hpp"
-#include "CodePatterns/Log.hpp"
-#include "Descriptors/AtomTypeDescriptor.hpp"
 #include "Parser/ChangeTracker.hpp"
 #include "Parser/PcpParser.hpp"
+#include "World.hpp"
 
 #ifdef HAVE_TESTRUNNER
@@ -133,4 +134,5 @@
   delete parser;
   ChangeTracker::purgeInstance();
+  AtomObserver::purgeInstance();
   World::purgeInstance();
 }
Index: src/Parser/unittests/ParserPdbUnitTest.cpp
===================================================================
--- src/Parser/unittests/ParserPdbUnitTest.cpp	(revision 23fd4308ecfb01cade133b122c6e3e4b440e3141)
+++ src/Parser/unittests/ParserPdbUnitTest.cpp	(revision 006e1ed7d5cc4416cfbfad21491bcfc0fcdda3ce)
@@ -24,12 +24,13 @@
 #include <cppunit/ui/text/TestRunner.h>
 
-#include "World.hpp"
 #include "Atom/atom.hpp"
+#include "Atom/AtomObserver.hpp"
+#include "CodePatterns/Log.hpp"
+#include "Descriptors/AtomTypeDescriptor.hpp"
 #include "Element/element.hpp"
 #include "Element/periodentafel.hpp"
-#include "CodePatterns/Log.hpp"
-#include "Descriptors/AtomTypeDescriptor.hpp"
 #include "Parser/ChangeTracker.hpp"
 #include "Parser/PdbParser.hpp"
+#include "World.hpp"
 
 #ifdef HAVE_TESTRUNNER
@@ -77,4 +78,5 @@
   delete parser;
   ChangeTracker::purgeInstance();
+  AtomObserver::purgeInstance();
   World::purgeInstance();
 }
Index: src/Parser/unittests/ParserPsi3UnitTest.cpp
===================================================================
--- src/Parser/unittests/ParserPsi3UnitTest.cpp	(revision 23fd4308ecfb01cade133b122c6e3e4b440e3141)
+++ src/Parser/unittests/ParserPsi3UnitTest.cpp	(revision 006e1ed7d5cc4416cfbfad21491bcfc0fcdda3ce)
@@ -26,10 +26,10 @@
 #include <boost/any.hpp>
 
-#include "CodePatterns/Assert.hpp"
-
 #include "Atom/atom.hpp"
-#include "Descriptors/AtomTypeDescriptor.hpp"
+#include "Atom/AtomObserver.hpp"
 #include "Element/element.hpp"
 #include "Element/periodentafel.hpp"
+#include "CodePatterns/Assert.hpp"
+#include "Descriptors/AtomTypeDescriptor.hpp"
 #include "Parser/ChangeTracker.hpp"
 #include "Parser/Psi3Parser.hpp"
@@ -143,4 +143,5 @@
   delete parser;
   ChangeTracker::purgeInstance();
+  AtomObserver::purgeInstance();
   World::purgeInstance();
 }
Index: src/Parser/unittests/ParserTremoloUnitTest.cpp
===================================================================
--- src/Parser/unittests/ParserTremoloUnitTest.cpp	(revision 23fd4308ecfb01cade133b122c6e3e4b440e3141)
+++ src/Parser/unittests/ParserTremoloUnitTest.cpp	(revision 006e1ed7d5cc4416cfbfad21491bcfc0fcdda3ce)
@@ -25,4 +25,5 @@
 
 #include "Atom/atom.hpp"
+#include "Atom/AtomObserver.hpp"
 #include "Descriptors/AtomTypeDescriptor.hpp"
 #include "Element/element.hpp"
@@ -101,4 +102,5 @@
   delete parser;
   ChangeTracker::purgeInstance();
+  AtomObserver::purgeInstance();
   World::purgeInstance();
 }
Index: src/Parser/unittests/ParserXmlUnitTest.cpp
===================================================================
--- src/Parser/unittests/ParserXmlUnitTest.cpp	(revision 23fd4308ecfb01cade133b122c6e3e4b440e3141)
+++ src/Parser/unittests/ParserXmlUnitTest.cpp	(revision 006e1ed7d5cc4416cfbfad21491bcfc0fcdda3ce)
@@ -24,12 +24,13 @@
 #include <cppunit/ui/text/TestRunner.h>
 
-#include "World.hpp"
 #include "Atom/atom.hpp"
+#include "Atom/AtomObserver.hpp"
+#include "CodePatterns/Log.hpp"
+#include "Descriptors/AtomTypeDescriptor.hpp"
 #include "Element/element.hpp"
 #include "Element/periodentafel.hpp"
-#include "CodePatterns/Log.hpp"
-#include "Descriptors/AtomTypeDescriptor.hpp"
 #include "Parser/ChangeTracker.hpp"
 #include "Parser/XmlParser.hpp"
+#include "World.hpp"
 
 #ifdef HAVE_TESTRUNNER
@@ -70,4 +71,5 @@
   delete parser;
   ChangeTracker::purgeInstance();
+  AtomObserver::purgeInstance();
   World::purgeInstance();
 }
Index: src/Parser/unittests/ParserXyzUnitTest.cpp
===================================================================
--- src/Parser/unittests/ParserXyzUnitTest.cpp	(revision 23fd4308ecfb01cade133b122c6e3e4b440e3141)
+++ src/Parser/unittests/ParserXyzUnitTest.cpp	(revision 006e1ed7d5cc4416cfbfad21491bcfc0fcdda3ce)
@@ -24,12 +24,13 @@
 #include <cppunit/ui/text/TestRunner.h>
 
-#include "World.hpp"
 #include "Atom/atom.hpp"
+#include "Atom/AtomObserver.hpp"
+#include "CodePatterns/Log.hpp"
+#include "Descriptors/AtomTypeDescriptor.hpp"
 #include "Element/element.hpp"
 #include "Element/periodentafel.hpp"
-#include "CodePatterns/Log.hpp"
-#include "Descriptors/AtomTypeDescriptor.hpp"
 #include "Parser/ChangeTracker.hpp"
 #include "Parser/XyzParser.hpp"
+#include "World.hpp"
 
 #ifdef HAVE_TESTRUNNER
@@ -76,4 +77,5 @@
   delete parser;
   ChangeTracker::purgeInstance();
+  AtomObserver::purgeInstance();
   World::purgeInstance();
 }
Index: src/UIElements/TextUI/TextWindow.cpp
===================================================================
--- src/UIElements/TextUI/TextWindow.cpp	(revision 23fd4308ecfb01cade133b122c6e3e4b440e3141)
+++ src/UIElements/TextUI/TextWindow.cpp	(revision 006e1ed7d5cc4416cfbfad21491bcfc0fcdda3ce)
@@ -38,4 +38,5 @@
 #include "Views/StreamStringView.hpp"
 #include "Views/MethodStringView.hpp"
+#include "World.hpp"
 
 #include "Helpers/defs.hpp"
