Index: /trunk/src/lib/event/event_handler.h
===================================================================
--- /trunk/src/lib/event/event_handler.h	(revision 5775)
+++ /trunk/src/lib/event/event_handler.h	(revision 5776)
@@ -14,5 +14,4 @@
 // FORWARD DECLARATION
 class EventListener;
-template<class T> class tList;
 template<class T> class tStack;
 class IniParser;
Index: /trunk/src/lib/graphics/render2D/render_2d.h
===================================================================
--- /trunk/src/lib/graphics/render2D/render_2d.h	(revision 5775)
+++ /trunk/src/lib/graphics/render2D/render_2d.h	(revision 5776)
@@ -10,5 +10,4 @@
 #include "element_2d.h"
 // FORWARD DECLARATION
-template <class T> class tList;
 
 //! A default singleton class.
Index: /trunk/src/lib/physics/physics_engine.cc
===================================================================
--- /trunk/src/lib/physics/physics_engine.cc	(revision 5775)
+++ /trunk/src/lib/physics/physics_engine.cc	(revision 5776)
@@ -34,6 +34,4 @@
   this->setClassID(CL_PHYSICS_ENGINE, "PhysicsEngine");
   this->setName("PhysicsEngine");
-  this->connections = new tList<PhysicsConnection>;
-  this->fields = new tList<Field>;
   this->interfaces = NULL;
 }
@@ -51,13 +49,7 @@
 {
   // delete all PhysicsConnections that are still in existence
-  tIterator<PhysicsConnection>* itPC = this->connections->getIterator();
-  PhysicsConnection* enumPC = itPC->firstElement();
-  while (enumPC)
-  {
-    delete enumPC;
-    enumPC = itPC->nextElement();
-  }
-  delete itPC;
-  delete this->connections;
+  list<PhysicsConnection*>::iterator pc;
+  for (pc = this->connections.begin(); pc != this->connections.end(); pc++)
+    delete (*pc);
 //
 //   // delete all PhysicsInterfaces, still in existence (this could be dangerous)
@@ -82,6 +74,4 @@
 //   }
 //   delete itF;
-   delete this->fields;
-
 
   PhysicsEngine::singletonRef = NULL;
@@ -161,5 +151,5 @@
 void PhysicsEngine::addField(Field* field)
 {
-  this->fields->add(field);
+  this->fields.push_back(field);
 }
 
@@ -172,5 +162,5 @@
 void PhysicsEngine::removeField(Field* field)
 {
-  this->fields->remove(field);
+  this->fields.remove(field);
 }
 
@@ -181,16 +171,8 @@
 Field* PhysicsEngine::getFieldByName(const char* FieldName) const
 {
-  tIterator<Field>* tmpIt = fields->getIterator();
-  Field* tmpField = tmpIt->firstElement();
-  while(tmpField)
-  {
-    if (!strcmp(FieldName, tmpField->getName()))
-    {
-      delete tmpIt;
-      return tmpField;
-    }
-    tmpField = tmpIt->nextElement();
-  }
-  delete tmpIt;
+  list<Field*>::const_iterator field;
+  for (field = this->fields.begin(); field != this->fields.end(); field++)
+    if (!strcmp(FieldName, (*field)->getName()))
+      return (*field);
   return NULL;
 }
@@ -206,5 +188,5 @@
 void PhysicsEngine::addConnection(PhysicsConnection* connection)
 {
-  this->connections->add(connection);
+  this->connections.push_back(connection);
 }
 
@@ -217,5 +199,5 @@
 void PhysicsEngine::removeConnection(PhysicsConnection* connection)
 {
-  this->connections->remove(connection);
+  this->connections.remove(connection);
 }
 
@@ -226,16 +208,8 @@
 PhysicsConnection* PhysicsEngine::getPhysicsConnectionByName(const char* physicsConnectionName) const
 {
-  tIterator<PhysicsConnection>* tmpIt = connections->getIterator();
-  PhysicsConnection* tmpConn = tmpIt->firstElement();
-  while(tmpConn)
-  {
-    if (!strcmp(physicsConnectionName, tmpConn->getName()))
-    {
-      delete tmpIt;
-      return tmpConn;
-    }
-    tmpConn = tmpIt->nextElement();
-  }
-  delete tmpIt;
+  list<PhysicsConnection*>::const_iterator pc;
+  for (pc = this->connections.begin(); pc != this->connections.end(); pc++)
+    if (!strcmp(physicsConnectionName, (*pc)->getName()))
+      delete (*pc);
   return NULL;
 }
@@ -253,13 +227,7 @@
   /* go through all the PhysicsInterface(s) and tick them,
   meaning let the fields work */
-  tIterator<PhysicsConnection>* itPC = this->connections->getIterator();
-  PhysicsConnection* enumPC = itPC->firstElement();
-  while (enumPC)
-    {
-      enumPC->apply();
-
-      enumPC = itPC->nextElement();
-    }
-  delete itPC;
+  list<PhysicsConnection*>::iterator pc;
+  for (pc = this->connections.begin(); pc != this->connections.end(); pc++)
+    (*pc)->apply();
 
   /* actually tick all the PhysicsInterfaces. Move the objects around */
@@ -291,6 +259,6 @@
   if (this->interfaces != NULL)
     PRINT(0)(" number of Interfaces: %d\n", this->interfaces->getSize());
-  PRINT(0)(" number of Fields: %d\n", this->fields->getSize());
-  PRINT(0)(" number of Connections: %d\n", this->connections->getSize());
+  PRINT(0)(" number of Fields: %d\n", this->fields.size());
+  PRINT(0)(" number of Connections: %d\n", this->connections.size());
 
   PRINT(0)("==============================PHYS==\n");
Index: /trunk/src/lib/physics/physics_engine.h
===================================================================
--- /trunk/src/lib/physics/physics_engine.h	(revision 5775)
+++ /trunk/src/lib/physics/physics_engine.h	(revision 5776)
@@ -13,4 +13,6 @@
 #include "physics_interface.h"
 #include "field.h"
+#include <list>
+
 
 // Forward Declaration
@@ -51,6 +53,6 @@
   static PhysicsEngine*         singletonRef;         //!< the singleton reference of the PhysicsEngine
 
-  tList<Field>*                 fields;               //!< a list of physicsl fields.
-  tList<PhysicsConnection>*     connections;          //!< a list of physical connections.
+  std::list<Field*>             fields;               //!< a list of physicsl fields.
+  std::list<PhysicsConnection*> connections;          //!< a list of physical connections.
   const tList<BaseObject>*      interfaces;           //!< The list of physical interfaces.
 };
