Added public files

Roughly added all public files. Probably missed some, though.
diff --git a/doc/lfun/MaterialList b/doc/lfun/MaterialList
new file mode 100644
index 0000000..17ef526
--- /dev/null
+++ b/doc/lfun/MaterialList
@@ -0,0 +1,65 @@
+MaterialList(L)
+FUNKTION:
+     varargs string MaterialList(int casus, mixed idinf)
+
+DEFINIERT IN:
+     /std/thing/description.c
+
+ARGUMENTE:
+     int casus	 - der Fall, in dem die Materialien dekliniert werden sollen
+     mixed idinf - Dinge, welche die Faehigkeiten des Erkennens beeinflussen:
+		   Einzelne Werte:
+                   * x: allgemeine Erkennung -100 ... 100
+                   * who: der Spieler - P_MATERIAL_KNOWLEDGE wird abgefragt
+                   * fun: wird evaluiert
+                   * what, kann folgendes enthalten:
+                     - Eintrag fuer Materialien ([MAT_XXX:-100...100])
+                     - Eintrag fuer Materialiengruppen (dito)
+                     - ([MATERIAL_SYMMETRIC_RECOGNIZABILITY: mixed mg])
+                       * mg ein Array:
+                         ({MATGROUP_X1,int z1, MATGROUP_X2, int z2, ...})
+                         wobei bei Zugehoerigkeit von string mat zu Gruppe
+                         z<n> auf die Faehigkeit addiert, andernfalls davon
+                         subtrahiert wird
+		   Array mit obigen Werten:
+                   - alle Parameter des Arrays sind optional und additiv
+                   - ({int x, object who, mapping what, closure fun})
+
+BESCHREIBUNG:
+     Listet die Materialien auf, aus denen ein Objekt besteht.
+     Dabei haengt die Genauigkeit der Materialerkennung von idinf ab. D.h.
+     je nach den Faehigkeiten/der angegebenen Faehigkeit wird zB Wolfram
+     als "Wolfram" oder nur als "Metall" erkannt.
+
+     Wenn ein Spieler etwas identifiziert, sollte auch TP uebergeben werden,
+     bei NPCs koennte das anders aussehen.
+
+RUECKGABEWERT:
+     String mit Liste der Materialien.
+
+BEMERKUNGEN:
+     - es werden nur die Materialien angegeben, nicht die Menge.
+     - ruft ConvMaterialList() an der MATERIALDB
+
+BEISPIELE:
+     // simpel
+     write("Der Gegenstand besteht aus"+ob->MaterialList(WEM,TP)+".\n")
+     // -> "Der Gegenstand besteht aus Gold, Silber und Rubin.\n"
+
+     // komplexer
+     ob->SetProp(P_MATERIAL, ([P_NITROGLYCERINE:90,P_GUNPOWDER:10]));
+     write("Das enthaelt "+ob->MaterialList(WER,TP)+".\n");
+     // -> "Das enthaelt Schwarzpulver und Nitroglycerin."
+
+SIEHE AUCH:
+     Konzepte:	  material, materialerkennung
+     Grundlegend: P_MATERIAL, /sys/thing/material.h
+     Methoden:    QueryMaterial(), QueryMaterialGroup()
+     Listen:	  AllMaterials(), AllGroups(), Dump()
+		  materialliste, materialgruppen
+     Master:	  AddMaterial(), ConvMaterialList(), MaterialGroup(),
+		  GroupName(), MaterialName(),
+		  GetGroupMembers(), GetMatMembership()
+     Sonstiges:	  P_MATERIAL_KNOWLEDGE
+
+7. Mai 2004 Gloinson
\ No newline at end of file