Added public files
Roughly added all public files. Probably missed some, though.
diff --git a/doc/efun/json_serialize b/doc/efun/json_serialize
new file mode 100644
index 0000000..fd68deb
--- /dev/null
+++ b/doc/efun/json_serialize
@@ -0,0 +1,45 @@
+OPTIONAL
+EXPERIMENTAL
+SYNOPSIS
+
+ string json_serialize(mixed <data>)
+
+DESCRIPTION
+ This efun creates a JSON object from the given LPC variable and
+ returns the object encoded as a LPC string. For container types like
+ arrays, mappings and structs, this will be done recursively.
+
+ Only the following LPC types are serialized. All other LPC types cause
+ a runtime error.
+ <int> -> JSON int
+ <float> -> JSON double
+ <string> -> JSON string
+ <mapping> -> JSON objects
+ <array> -> JSON arrays
+ <struct> -> JSON objects
+
+ The function is available only if the driver is compiled with Iksemel
+ support. In that case, __JSON__ is defined.
+
+LIMITATIONS
+ Only mappings with a width of 1 value per key and only string keys
+ can be serialized.
+ 64 bit wide integers can only be serialized losslessly on hosts with
+ a 64 bit wide LPC int and json-c library newer than 0.90.
+
+BUGS
+ __FLOAT_MIN__ is not serialized/parsed losslessly.
+
+EXAMPLES
+ json_serialize(42) -> "42"
+ json_serialize(42.0) -> "42.0"
+ json_serialize("hello world\n") -> "\"hello world\\n\""
+ json_serialize(({1,2,3,4,5,6})) -> "[ 1, 2, 3, 4, 5, 6 ]"
+ json_serialize(([ "test 1": 42, "test 2": 42.0 ]))
+ -> "{ \"test 2\": 42.000000, \"test 1\": 42 }"
+
+HISTORY
+ Added in LDMud 3.5.0
+
+SEE ALSO
+ json_parse(E)