Index: /orxonox/trunk/src/Makefile.in
===================================================================
--- /orxonox/trunk/src/Makefile.in	(revision 3527)
+++ /orxonox/trunk/src/Makefile.in	(revision 3528)
@@ -55,9 +55,9 @@
 am_orxonox_OBJECTS = orxonox.$(OBJEXT) game_loader.$(OBJEXT) \
 	command_node.$(OBJEXT) keynames.$(OBJEXT) camera.$(OBJEXT) \
-	track_manager.$(OBJEXT) light.$(OBJEXT) story_entity.$(OBJEXT) \
-	campaign.$(OBJEXT) world.$(OBJEXT) world_entity.$(OBJEXT) \
-	player.$(OBJEXT) environment.$(OBJEXT) skysphere.$(OBJEXT) \
-	primitive.$(OBJEXT) ai.$(OBJEXT) p_node.$(OBJEXT) \
-	null_parent.$(OBJEXT) helper_parent.$(OBJEXT) \
+	track_manager.$(OBJEXT) track_node.$(OBJEXT) light.$(OBJEXT) \
+	story_entity.$(OBJEXT) campaign.$(OBJEXT) world.$(OBJEXT) \
+	world_entity.$(OBJEXT) player.$(OBJEXT) environment.$(OBJEXT) \
+	skysphere.$(OBJEXT) primitive.$(OBJEXT) ai.$(OBJEXT) \
+	p_node.$(OBJEXT) null_parent.$(OBJEXT) helper_parent.$(OBJEXT) \
 	data_tank.$(OBJEXT) fontset.$(OBJEXT) array.$(OBJEXT) \
 	objModel.$(OBJEXT) model.$(OBJEXT) material.$(OBJEXT) \
@@ -88,5 +88,6 @@
 @AMDEP_TRUE@	./$(DEPDIR)/primitive.Po ./$(DEPDIR)/skysphere.Po \
 @AMDEP_TRUE@	./$(DEPDIR)/story_entity.Po ./$(DEPDIR)/texture.Po \
-@AMDEP_TRUE@	./$(DEPDIR)/track_manager.Po ./$(DEPDIR)/vector.Po \
+@AMDEP_TRUE@	./$(DEPDIR)/track_manager.Po \
+@AMDEP_TRUE@	./$(DEPDIR)/track_node.Po ./$(DEPDIR)/vector.Po \
 @AMDEP_TRUE@	./$(DEPDIR)/world.Po ./$(DEPDIR)/world_entity.Po
 CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
@@ -223,4 +224,5 @@
 		 camera.cc \
 		 track_manager.cc \
+		 track_node.cc \
 		 light.cc \
 		 story_entities/story_entity.cc \
@@ -262,4 +264,6 @@
 		 message_structures.h \
 		 light.h \
+		 track_manager.h \
+		 track_node.h \
 		 story_entities/story_entity.h \
 		 story_entities/story_def.h \
@@ -315,7 +319,7 @@
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/Makefile'; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  src/Makefile'; \
 	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/Makefile
+	  $(AUTOMAKE) --gnu  src/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@@ -399,4 +403,5 @@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/texture.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/track_manager.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/track_node.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vector.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/world.Po@am__quote@
Index: /orxonox/trunk/src/lib/Makefile.in
===================================================================
--- /orxonox/trunk/src/lib/Makefile.in	(revision 3527)
+++ /orxonox/trunk/src/lib/Makefile.in	(revision 3528)
@@ -181,7 +181,7 @@
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/lib/Makefile'; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  src/lib/Makefile'; \
 	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/lib/Makefile
+	  $(AUTOMAKE) --gnu  src/lib/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
Index: /orxonox/trunk/src/lib/graphics/Makefile.in
===================================================================
--- /orxonox/trunk/src/lib/graphics/Makefile.in	(revision 3527)
+++ /orxonox/trunk/src/lib/graphics/Makefile.in	(revision 3528)
@@ -175,7 +175,7 @@
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/lib/graphics/Makefile'; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  src/lib/graphics/Makefile'; \
 	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/lib/graphics/Makefile
+	  $(AUTOMAKE) --gnu  src/lib/graphics/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
Index: /orxonox/trunk/src/lib/graphics/importer/Makefile.in
===================================================================
--- /orxonox/trunk/src/lib/graphics/importer/Makefile.in	(revision 3527)
+++ /orxonox/trunk/src/lib/graphics/importer/Makefile.in	(revision 3528)
@@ -215,7 +215,7 @@
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/lib/graphics/importer/Makefile'; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  src/lib/graphics/importer/Makefile'; \
 	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/lib/graphics/importer/Makefile
+	  $(AUTOMAKE) --gnu  src/lib/graphics/importer/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
Index: /orxonox/trunk/src/lib/gui/Makefile.in
===================================================================
--- /orxonox/trunk/src/lib/gui/Makefile.in	(revision 3527)
+++ /orxonox/trunk/src/lib/gui/Makefile.in	(revision 3528)
@@ -177,7 +177,7 @@
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/lib/gui/Makefile'; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  src/lib/gui/Makefile'; \
 	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/lib/gui/Makefile
+	  $(AUTOMAKE) --gnu  src/lib/gui/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
Index: /orxonox/trunk/src/lib/gui/console/Makefile.in
===================================================================
--- /orxonox/trunk/src/lib/gui/console/Makefile.in	(revision 3527)
+++ /orxonox/trunk/src/lib/gui/console/Makefile.in	(revision 3528)
@@ -203,7 +203,7 @@
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/lib/gui/console/Makefile'; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  src/lib/gui/console/Makefile'; \
 	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/lib/gui/console/Makefile
+	  $(AUTOMAKE) --gnu  src/lib/gui/console/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
Index: /orxonox/trunk/src/lib/gui/gui/Makefile.in
===================================================================
--- /orxonox/trunk/src/lib/gui/gui/Makefile.in	(revision 3527)
+++ /orxonox/trunk/src/lib/gui/gui/Makefile.in	(revision 3528)
@@ -236,7 +236,7 @@
 	  esac; \
 	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign  src/lib/gui/gui/Makefile'; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  src/lib/gui/gui/Makefile'; \
 	cd $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign  src/lib/gui/gui/Makefile
+	  $(AUTOMAKE) --gnu  src/lib/gui/gui/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
Index: /orxonox/trunk/src/track_manager.cc
===================================================================
--- /orxonox/trunk/src/track_manager.cc	(revision 3527)
+++ /orxonox/trunk/src/track_manager.cc	(revision 3528)
@@ -19,6 +19,7 @@
 #include "p_node.h"
 
+#include "track_node.h"
+
 #include <stdarg.h>
-#include "p_node.h"
 
 using namespace std;
@@ -206,4 +207,6 @@
 {
   this->setClassName ("TrackManager");
+  
+  singletonRef = this;
 
   PRINTF(3)("Initializing the TrackManager\n");
@@ -214,5 +217,5 @@
   this->maxTime = 0;
   this->trackElemCount = 1;
-  this->bindSlave = NULL;
+  this->bindSlave = TrackNode::getInstance();
 }
 
@@ -242,8 +245,7 @@
 TrackManager* TrackManager::getInstance(void) 
 {
-  if (TrackManager::singletonRef)
-    return TrackManager::singletonRef;
-  else
-    return TrackManager::singletonRef = new TrackManager();
+  if (!singletonRef)
+    singletonRef = new TrackManager();
+  return singletonRef;
 }
 
@@ -694,6 +696,8 @@
 void TrackManager::setBindSlave(PNode* bindSlave)
 {
-  if (!this->bindSlave)
+  if (this->bindSlave == TrackNode::getInstance() || bindSlave == TrackNode::getInstance())
     this->bindSlave = bindSlave;
+  else
+    PRINTF(2)("Already a Bindslave set that is not the TrackNode itself. Not updating\n");
 }
 
Index: /orxonox/trunk/src/track_node.cc
===================================================================
--- /orxonox/trunk/src/track_node.cc	(revision 3527)
+++ /orxonox/trunk/src/track_node.cc	(revision 3528)
@@ -29,5 +29,5 @@
 TrackNode* TrackNode::getInstance ()
 {
-  if (singletonRef == NULL)
+  if (!singletonRef)
     singletonRef = new TrackNode ();
   return singletonRef;
@@ -41,4 +41,7 @@
 TrackNode::TrackNode () 
 {
+  this->setClassName("TrackNode");
+  singletonRef = this;
+
   NullParent::getInstance()->addChild(this);
   this->trackManager = TrackManager::getInstance();
