Add reduce

Broken
diff --git a/src/lisp/test-args.lisp b/src/lisp/test-args.lisp
index 14364a8..75f6107 100644
--- a/src/lisp/test-args.lisp
+++ b/src/lisp/test-args.lisp
@@ -1,7 +1,11 @@
+; (load "../../lib/lisp/std/std.lisp")
+
 (defun with-optional (required (optional 3))
   (+ required optional))
 
+(defun takes-varargs (& rest)
+  (print rest))
+
 (defun main ()
-  (when t
-    (print (with-optional 2))
-    (print (with-optional 2 4))))
+  (print "hi")
+  (takes-varargs 1 2 3 4))