Added public files

Roughly added all public files. Probably missed some, though.
diff --git a/obj/tools/MGtool/tool.h b/obj/tools/MGtool/tool.h
new file mode 100644
index 0000000..1eff23d
--- /dev/null
+++ b/obj/tools/MGtool/tool.h
@@ -0,0 +1,246 @@
+#ifndef __TOOL_H__
+#define __TOOL_H__
+
+/*
+ * MGtool-1.3
+ * File: tool.h
+ * Maintainer: Kirk@MorgenGrauen
+ */
+
+/*------------------------------------------*/
+/* the original Xtool is copyrighted by Hyp */
+/*------------------------------------------*/
+
+#ifndef MASTER
+#define MASTER __MASTER_OBJECT__
+#endif
+
+#define VOID "/room/void"
+
+#define NULL               (0)
+#define FALSE              (0)
+#define TRUE               (1)
+#define ERROR              (-1)
+#define PREV               previous_object()
+#define TP                 efun::this_player()
+#define RTP                efun::this_interactive()
+#define TOOL_NAME          "MGtool"
+#define TOOL_VERSION       "1.3.3"
+#define TOOL_TITLE         TOOL_NAME+" v"+TOOL_VERSION
+#define TOOL_INTERNAL      "1.3.3-10.07.97"
+
+#define TOOL_PATH          "/obj/tools/MGtool"
+
+#define TOOL_MANPAGE       TOOL_PATH+"/tool.doc"
+#define TOOL_NEWS          TOOL_PATH+"/tool.news"
+#define TOOL_LOG           "/log/xtool"
+#define XPROF_MACRO        TOOL_PATH+"/prof.h"
+#define LAG_O_DAEMON       "/p/daemon/lag-o-daemon"
+
+#define TOOL_LEVEL         (40)
+
+#define MORE_LINES         (20)
+#define MAX_HISTORY        (25)
+#define MAX_RECURSION      (6)
+#define TRACE_LEVEL        (1|2|4|8)
+#define AUTOLOAD_ARGS      ({TOOL_INTERNAL, modi, morelines})
+#define EXEC_LINES         (10)
+#define EXEC_TIME          (1)
+
+#define IA(x)              interactive(x)
+#define ENV(x)             environment(x)
+#define LOWER(x)           lower_case(x)
+#define NAME(x)            ((string)x->query_name())
+#define CNAME(x)           CAP((string)NAME(x))
+
+#define RNAME(x)           getuid(x)
+#define CRNAME(x)          CAP(RNAME(x))
+
+#define LEVEL(x)           query_wiz_level(x)
+
+#define FORALL(x, y)       for(x=first_inventory(y);x;x=next_inventory(x))
+#define DESTRUCT(x)        Destruct(x)
+#define ALEFT(x,y,z)       sprintf("%-*'"+z+"'s", y, (""+(x))[0..y-1])
+#define ARIGHT(x,y,z)      sprintf("%*'"+z+"'s" , y, (""+(x))[0..y-1])
+#define W(x)               Write(x)
+#define WLN(x)             W(x+"\n")
+#define WDLN(x)            W(x+".\n")
+
+#define MODE_ON(x)         (modi|=x)
+#define MODE_OFF(x)        (modi&=~x)
+#define MODE(x)            (modi&x)
+#define MODE_HEART         (1)
+#define MODE_FIRST         (2)
+#define MODE_PROTECT       (4)
+#define MODE_INVCHECK      (8)
+#define MODE_ENVCHECK      (16)
+#define MODE_NDCHECK       (32)
+#define MODE_VARCHECK      (64)
+#define MODE_ECHO          (128)
+#define MODE_SHORT         (256)
+#define MODE_SNOOPCHK      (512)
+#define MODE_INVISCHK      (1024)
+#define MODE_SCANCHK       (2048)
+
+#define ERR_FILE           "/players/"+RNAME(cloner)+"/.err"
+#define LPC_FILE           "/players/"+RNAME(cloner)+"/.tool.lpc"
+#define TMP_FILE           "/players/"+RNAME(cloner)+"/.tool.tmp"
+#define SAVE_FILE          "/players/"+RNAME(cloner)+"/.toolrc"
+#define XPROF_FILE         "/players/"+RNAME(cloner)+"/prof.c"
+#define PIPE_FILE          "/players/"+RNAME(cloner)+"/.tool.pipe"
+#define PRIVATE_HEADER     "/players/"+RNAME(cloner)+"/.xtool.h"
+#define PIPE_DELETE(x)     if(pipe_out&&pipe_ovr&&file_size(x)>=0) rm(x)
+
+#define PIPE_IN            1
+#define PIPE_OUT           2
+#define PIPE_MAX           10000
+
+#define XGREP_REVERT       1
+#define XGREP_ICASE        2
+
+#define SECURE1()    if(!security()) return;
+#define SECURE2(x)   if(!security()) return x;
+#define USAGE1(x,y)  notify_fail("Usage: "+(y)+"\n");\
+                     if((x)=="?") return FALSE;
+#define USAGE2(x,y)  notify_fail("Usage: "+(y)+"\n");\
+                     if((!(x))||((x)=="?")) return FALSE;
+#define USAGE3(x)    return WLN("Usage: "+(x))
+
+static int CatFile();
+static int Command(string str);
+int CommandScan(string arg);
+int DoAlias(string verb, string arg);
+int DoHistory(string line);
+static int MoveObj(object obj1, object obj2, int silent);
+static int XGrepFile(string pat, string file, int revert);
+int Xcall(string str);
+int Xcallouts(string str);
+int Xcat(string str);
+int Xcindent(string str);
+int Xclean(string str);
+int Xclone(string str);
+int Xuclone(string str);
+int Xcmds(string str);
+int Xdate(string str);
+int Xdbg(string str);
+int Xdclean(string str);
+int Xddes(string str);
+int Xdes(string str);
+int Xdlook(string str);
+int Xdo(string str);
+int Xdupdate(string str);
+int Xecho(string str);
+int Xeval(string str);
+int Xforall(string str);
+int Xgoto(string str);
+int Xgrep(string str);
+int Xhbeats(string str);
+int Xhead(string str);
+int Xhelp(string str);
+int Xids(string str);
+int Xinfo(string str);
+int Xinherit(string str);
+int Xinventory(string str);
+int Xlag(string str);
+int Xlight(string str);
+int Xload(string str);
+int Xlook(string str);
+int Xlpc(string str);
+int Xman(string str);
+int Xmore(string str);
+int Xmove(string str);
+int Xmsg(string str);
+int Xmtp(string str);
+int Xproc(string str);
+int Xprops(string str);
+int Xprof(string str);
+int Xquit(string str);
+int Xscan(string str);
+int Xset(string str);
+int Xsh(string str);
+int Xsort(string str);
+int Xstop(string str);
+int Xtool(string str);
+int Xtrace(string str);
+int Xtrans(string str);
+int Xupdate(string str);
+int Xwc(string str);
+int Xwho(string opt);
+static string crname(object who);
+int id(string str);
+int move(mixed dest);
+static int security();
+int write_newinvobj(object who);
+int write_newenvobj(object who);
+int write_netdead(object who);
+int write_alive(object who);
+int write_snoopee(object who);
+int write_nosnoop(object who);
+int write_invisobj(object who);
+int write_invislvg(object who);
+int write_invisply(object who);
+int write_visibobj(object who);
+int write_visiblvg(object who);
+int write_visibply(object who);
+static object *SubNodes(object obj);
+static varargs object FindObj(string str, object env, int silent);
+static object VarToObj(string str);
+static varargs object XFindObj(string str, int silent);
+static string ObjFile(object obj);
+static string PlayerAge(object obj);
+static string PlayerDomain(object obj, int flag);
+static string PlayerIP(object obj, int flag);
+static string PlayerIdle(object obj);
+static string PlayerMail(object obj, int flag);
+static string PlayerRace(object obj, int flag);
+static string PlayerSnoop(object obj, int flag);
+static string PlayerStats(object obj, int flag);
+static string PlayerWho(object obj);
+static string VarToFile(string str);
+static string VarToPureFile(string str);
+static string XFile(string file);
+static string XFindFile(string file);
+static varargs void DeepPrintShort(object env, int indent, string pre, string file);
+static void Destruct(object obj);
+static void DumpProperties(object obj, int flag);
+static void Inheritance(object obj, string func, string pre);
+void InvisCheck();
+static void MoreFile(string str);
+void NetDeadCheck(int show);
+static void PrintObj(object obj, string file);
+static varargs void PrintShort(string pre, object obj, string file);
+void SnoopCheck();
+static void VarCheck(int show);
+static int  Write(string str);
+static void XExecFile(int line);
+static void XMoreFile(string file, int flag);
+static void XMsgSay(string str);
+static void XMsgShout(string str);
+static void XMsgTell(string str);
+static void XmtpScript(string dir, string file, string opt);
+void actions();
+void init();
+void update_tool(mixed *args, object obj);
+string _query_long();
+string _query_short();
+
+static int CallFunc(string verb, string str);
+static string GetFunc(string verb, int test);
+
+static string PrepareLine(string str);
+static string QuoteLine(string str);
+static string UnquoteLine(string str);
+int QuoteOk(string str);
+static string *ExplodeCmds(string str);
+
+string read_buffer(string filename, int start, int number);
+string load_buffer(int line);
+int read_line(int offset);
+
+/*
+ * debug stuff
+ */
+void TK(string str);
+int Xtk(string str);
+
+#endif /* __TOOL_H__ */