remove() implementiert.

Das remove() im channeld.c sollte zumindest noch Daten
speichern.
Allerdings reagiert er auch *mit* diesem remove() nicht
gut auf das Entladen und Ebenen koennen verloren gehen!

Change-Id: I80d5ed20c8de4843a5c85e326312ec5df51445b6
diff --git a/p/daemon/channeld.c b/p/daemon/channeld.c
index a648de7..2d95d2c 100644
--- a/p/daemon/channeld.c
+++ b/p/daemon/channeld.c
@@ -554,6 +554,23 @@
   }
 }
 
+varargs int remove(int silent)
+{
+  if (save_me_soon)
+  {
+    save_me_soon = 0;
+    save_object(CHANNEL_SAVE);
+  }
+  if (!silent)
+  {
+    this_object()->send(CMNAME, this_object(),
+      sprintf("remove() durch %O gerufen. Speichern und Ende.\n",
+              previous_object()));
+  }
+  destruct(this_object());
+  return 1;
+}
+
 // name() - define the name of this object.
 string name()
 {