Added public files

Roughly added all public files. Probably missed some, though.
diff --git a/doc/hook/clone_uids b/doc/hook/clone_uids
new file mode 100644
index 0000000..4bf902a
--- /dev/null
+++ b/doc/hook/clone_uids
@@ -0,0 +1,36 @@
+SYNOPSIS
+        #include <sys/driver_hooks.h>
+
+        set_driver_hook(H_CLONE_UIDS, value)
+
+        <value> being:
+
+          mixed <closure>(object blueprint, string objectname)
+
+DESCRIPTION
+        Mandatory hooks to determine the uid and euid of cloned
+        objects.  Hook settings can be any closure.
+
+        When an object is cloned, the H_CLONE_UIDS hook is called with
+        the blueprint object as first and the clone's designated name
+        as second argument. The new object already exists, but has 0
+        uids.
+
+        For the result, the following possibilities exist (<num> is
+        a non-zero number, <no-string> is anything but a string):
+
+           "<uid>"                    -> uid = "<uid>", euid = "<uid>"
+           ({ "<uid>", "<euid>" })    -> uid = "<uid>", euid = "<euid>"
+           ({ "<uid>", <no-string> }) -> uid = "<uid>", euid = 0
+
+        If strict-euids is not active, the following results are
+        possible, too:
+
+           <num>                      -> uid = 0, euid = 0
+           ({ <num>, "<euid>" })      -> uid = 0, euid = "<euid>"
+           ({ <num>, <no-string> })   -> uid = 0, euid = 0
+
+HISTORY
+
+SEE ALSO
+        hooks(C), uids(C), load_uids(H)