Added public files

Roughly added all public files. Probably missed some, though.
diff --git a/doc/efun/symbol_function b/doc/efun/symbol_function
new file mode 100644
index 0000000..dbb53d0
--- /dev/null
+++ b/doc/efun/symbol_function
@@ -0,0 +1,36 @@
+SYNOPSIS
+        closure symbol_function(symbol arg);
+        closrue symbol_function(string arg);
+        closure symbol_function(string arg, object|string obj);
+
+BESCHREIBUNG
+        Erzeugt eine Lfun-, Efun- oder Operator-Closure aus <arg>, wobei
+        <arg> entweder ein string oder ein symbol sein muss. Fuer
+        Lfun-Closures gibt <obj> an, zu welchem Objekt die Lfun gehoert,
+        entweder angegeben durch das Objekt selbst (bzw. einen pointer
+        darauf) oder durch den Objektnamen als String. Wenn ein String
+        angegeben wird, wird das Objekt beim Aufruf geladen.
+
+        Wenn die Closure fuer eine Lfun in einem anderen als dem momentanen
+        Objekt erzeugt wird, ergibt dies eine "alien lfun closure". Solche
+        Closures sind an das Objekt gebunden, das symbol_function()
+        aufgerufen hat (dieses Objekt wird von to_object() geliefert),
+        obwohl der eigentliche Code in einem anderen Objekt steht (das mit
+        get_type_info() gefunden werden kann).
+
+        Als "private" deklarierte Funktionen koennen auf diese Weise nie
+        zu einer Closure gewandelt werden, "static" und "protected"
+        deklarierte Lfuns nur dann, wenn <obj> das gueltige Objekt
+        (d.h. this_object()) ist.
+        Expord.h. tiert man die Closures, koennen sie unabhaengig vom Modifier der
+        Ursprungsfunktionen von jedem gerufen werden.
+        umgehen).
+
+BEISPIELE
+        symbol_function("efun::users");
+            --> ergibt: #'users
+        symbol_function("QueryProp", other_obj);
+            --> ergibt: other_obj->QueryProp()
+
+SIEHE AUCH
+        lambda(E), quote(E)