Added public files

Roughly added all public files. Probably missed some, though.
diff --git a/std/living/comm.c b/std/living/comm.c
new file mode 100644
index 0000000..6001ffd
--- /dev/null
+++ b/std/living/comm.c
@@ -0,0 +1,133 @@
+// MorgenGrauen MUDlib
+//
+// living/comm.c -- communiction module for livings
+//
+// $Id$
+
+#pragma strong_types,save_types
+#pragma no_clone
+#pragma pedantic
+#pragma range_check
+
+#include <defines.h>
+#include <living/comm.h>
+
+void create_super()
+{
+  set_next_reset(-1);
+}
+
+protected string comm_guess_action() {
+  string cmd;
+  string action = query_verb();
+  // Die Aktionen sind intern in der Regel nach den haeufigsten Kommandoverben
+  // dieser Aktion benannt. Bei einigen Aktionen sind mehrere Kommandoverben
+  // ueblich, die sollen hier noch abgehandelt werden.
+  switch(action) {
+    case "nehme":
+      // MA_TAKE == nimm
+      action = MA_TAKE;
+      break;
+
+    case "norden":
+    case "nordosten":
+    case "osten":
+    case "suedosten":
+    case "sueden":
+    case "suedwesten":
+    case "westen":
+    case "nordwesten":
+    case "oben":
+    case "unten":
+    case "betrete":
+    case "verlasse":
+    case "teleport":
+    case "teleportiere":
+      action = MA_MOVE;
+      break;
+
+    case "unt":
+      action = MA_LOOK;
+      break;
+
+    case "wirf":
+      if (strstr(query_command(), " weg") > -1)
+        action = MA_PUT;
+      break;
+
+    case "stecke":
+      cmd = query_command();
+      if (strstr(cmd, " weg") > -1)
+        action = MA_UNWIELD;
+      else if (strstr(cmd," in ") > -1)
+        action = MA_PUT;
+      break;
+
+    case "ziehe":
+      cmd = query_command();
+      if (strstr(cmd, " an") > -1)
+        action = MA_WEAR;
+      else if (strstr(cmd, " aus") > -1)
+        action = MA_UNWEAR;
+      break;
+
+    case "esse":
+    case "friss":
+      action = MA_EAT;
+      break;
+
+    case "saufe":
+      action = MA_DRINK;
+      break;
+
+    case "hoere":
+      //MA_LISTEN == lausche
+      action = MA_LISTEN;
+      break;
+    case "lese":
+      action = MA_READ;
+      break;
+
+    case ":":
+    case ";":
+      action = MA_EMOTE;
+      break;
+
+    case "zerbreche":
+    case "zerstoere":
+    case "verbrenne":
+    case "entsorge":
+      action = MA_REMOVE;
+      break;
+  }
+  return action;
+}
+
+protected int comm_guess_message_type(string action, mixed origin) {
+  // everything not mentioned in the switch becomes MT_LOOK.
+  switch(action) {
+    case MA_FIGHT:
+      // Kampf kann man meisten sowohl sehen als auch hoeren.
+      return MT_LOOK | MT_LISTEN;
+    case MA_LISTEN:
+    case MA_SAY:
+      return MT_LISTEN;
+    case MA_FEEL:
+      return MT_FEEL;
+    case MA_SMELL:
+      return MT_SMELL;
+    case MA_CHANNEL:
+      return MT_COMM | MT_FAR;
+    case MA_EMOTE:
+      if (objectp(origin)
+          && environment(origin) == environment())
+        return MT_COMM;
+      else
+        return MT_COMM | MT_FAR;
+    case MA_SHOUT:
+      return MT_LISTEN | MT_FAR;
+  }
+  // die meisten Aktionen sind zumindest sichtbar...
+  return MT_LOOK;
+}
+