Index: /trunk/src/lib/lang/new_class_id.cc
===================================================================
--- /trunk/src/lib/lang/new_class_id.cc	(revision 9680)
+++ /trunk/src/lib/lang/new_class_id.cc	(revision 9681)
@@ -35,5 +35,4 @@
 NewClassID::~NewClassID ()
 {
-  //  assert(_objectList != NULL);
   ClassList::iterator it;
   for (it = this->_classes.begin(); it != this->_classes.end(); ++it)
@@ -42,5 +41,4 @@
     delete (*it)._iterator;
   }
-  //_objectList->unregisterObject(this->_iterators);
 }
 
Index: /trunk/src/lib/lang/new_class_id.h
===================================================================
--- /trunk/src/lib/lang/new_class_id.h	(revision 9680)
+++ /trunk/src/lib/lang/new_class_id.h	(revision 9681)
@@ -14,6 +14,4 @@
 
 
-
-
 //! A class to dynamically allocate ClassID's and support a isA operator
 class NewClassID
@@ -22,5 +20,4 @@
   NewClassID();
   ~NewClassID();
-
 
   int leafClassID() const { return _classes.front()._objectList->id(); }
Index: /trunk/src/lib/lang/new_object_list.cc
===================================================================
--- /trunk/src/lib/lang/new_object_list.cc	(revision 9680)
+++ /trunk/src/lib/lang/new_object_list.cc	(revision 9681)
@@ -20,9 +20,13 @@
 
 
+/**
+ * @brief Constructor, that creates an ObjectList while checking (development mode) for uniqueness of all Keys (names and ID's)
+ * @param className The Name of the Class to create an ObjectList for.
+ * @param id The ID if you like, or -1 otherwise.
+ * @return a new NewObejctList
+ */
 NewObjectListBase::NewObjectListBase(const std::string& className, int id)
     : _name(className)
 {
-
-
   if (NewObjectListBase::_classesByID == NULL)
   {
@@ -46,5 +50,5 @@
 
   /// Some Output, that will fall out later
-  std::cout << "register new ObjectList " << className << " ID: " << this->_id << std::endl;
+  //std::cout << "register new ObjectList " << className << " ID: " << this->_id << std::endl;
 
   (*NewObjectListBase::_classesByID)[this->_id] = this;
@@ -61,10 +65,9 @@
 {
   assert (NewObjectListBase::_classesByName != NULL && NewObjectListBase::_classesByID != NULL);
-
+  /*
   std::cout << "Erasing: " << this->_name << " "<< this->_id  << std::endl;
-
   std::cout << "SIZE OF _classByID: " << NewObjectListBase::_classesByID->size() << std::endl;
   std::cout << "SIZE OF _classByName: " << NewObjectListBase::_classesByName->size() << std::endl;
-
+  */
   NewObjectListBase::_classesByName->erase(this->_name);
   NewObjectListBase::_classesByID->erase(this->_id);
Index: /trunk/src/lib/lang/new_object_list.h
===================================================================
--- /trunk/src/lib/lang/new_object_list.h	(revision 9680)
+++ /trunk/src/lib/lang/new_object_list.h	(revision 9681)
@@ -12,4 +12,5 @@
 #include <list>
 #include <string>
+#include <iostream>
 
 
@@ -129,4 +130,9 @@
 //// IMPLEMENTATION /////
 /////////////////////////
+/**
+ * @brief creates a new NewObjectList
+ * @param name The name of the Class.
+ * @param id The ID of the class if desired, or -1 if an id should be assigned automatically.
+ */
 template <class T>
 NewObjectList<T>::NewObjectList(const std::string& name, int id)
@@ -134,8 +140,15 @@
 {}
 
+/**
+ * @brief deletes the NewObjectList.
+ */
 template <class T>
 NewObjectList<T>::~NewObjectList()
 {
-  // assert(_objects.empty());
+  if (!_objects.empty())
+  {
+    std::cout << "There are still Object in the ObjectList of " << this->name() << "(id:" << this->id() << ")\n";
+    this->debug();
+  }
 }
 
@@ -151,5 +164,5 @@
 
 template <class T>
-    NewObjectListBase::IteratorBase* NewObjectList<T>::registerObject(T* object)
+NewObjectListBase::IteratorBase* NewObjectList<T>::registerObject(T* object)
 {
   this->_objects.push_front(object);
@@ -164,5 +177,4 @@
 }
 
-#include <iostream>
 
 template <class T>
Index: /trunk/src/lib/lang/test_object_list.cc
===================================================================
--- /trunk/src/lib/lang/test_object_list.cc	(revision 9680)
+++ /trunk/src/lib/lang/test_object_list.cc	(revision 9681)
@@ -64,5 +64,5 @@
   {
     this->registerObject(this, Bone::objectList);
-    this->_id.listInheritance();
+    //this->_id.listInheritance();
     std::cout << "LeafID:" << this->_id.leafClassID() << std::endl;
 
@@ -79,9 +79,11 @@
 int main()
 {
-  for (unsigned int i = 0; i < 20; ++i)
+#define ITERATIONS 20
+#define COUNT 100
+  for (unsigned int i = 0; i < ITERATIONS; ++i)
   {
     std::cout<< i <<  std::endl ;
-    Bone* test = new Bone[10000];
-    // delete[]test;
+    Bone* test = new Bone[COUNT];
+    delete[]test;
   }
   //   char tmp[100];
