diff --git a/ArrayTypeRewrite.jrag b/compiler/ArrayTypeRewrite.jrag
similarity index 100%
rename from ArrayTypeRewrite.jrag
rename to compiler/ArrayTypeRewrite.jrag
diff --git a/CS_CodeGen.jrag b/compiler/CS_CodeGen.jrag
similarity index 100%
rename from CS_CodeGen.jrag
rename to compiler/CS_CodeGen.jrag
diff --git a/C_CodeGen.jrag b/compiler/C_CodeGen.jrag
similarity index 100%
rename from C_CodeGen.jrag
rename to compiler/C_CodeGen.jrag
diff --git a/ErrorCheck.jrag b/compiler/ErrorCheck.jrag
similarity index 100%
rename from ErrorCheck.jrag
rename to compiler/ErrorCheck.jrag
diff --git a/Java_CodeGen.jrag b/compiler/Java_CodeGen.jrag
similarity index 100%
rename from Java_CodeGen.jrag
rename to compiler/Java_CodeGen.jrag
diff --git a/LabComm.ast b/compiler/LabComm.ast
similarity index 100%
rename from LabComm.ast
rename to compiler/LabComm.ast
diff --git a/LabComm.java b/compiler/LabComm.java
similarity index 100%
rename from LabComm.java
rename to compiler/LabComm.java
diff --git a/LabCommParser.parser b/compiler/LabCommParser.parser
similarity index 100%
rename from LabCommParser.parser
rename to compiler/LabCommParser.parser
diff --git a/LabCommScanner.flex b/compiler/LabCommScanner.flex
similarity index 100%
rename from LabCommScanner.flex
rename to compiler/LabCommScanner.flex
diff --git a/LabCommmTokens.jrag b/compiler/LabCommmTokens.jrag
similarity index 100%
rename from LabCommmTokens.jrag
rename to compiler/LabCommmTokens.jrag
diff --git a/NameAnalysis.jrag b/compiler/NameAnalysis.jrag
similarity index 100%
rename from NameAnalysis.jrag
rename to compiler/NameAnalysis.jrag
diff --git a/PrettyPrint.jrag b/compiler/PrettyPrint.jrag
similarity index 100%
rename from PrettyPrint.jrag
rename to compiler/PrettyPrint.jrag
diff --git a/Python_CodeGen.jrag b/compiler/Python_CodeGen.jrag
similarity index 100%
rename from Python_CodeGen.jrag
rename to compiler/Python_CodeGen.jrag
diff --git a/Signature.jrag b/compiler/Signature.jrag
similarity index 100%
rename from Signature.jrag
rename to compiler/Signature.jrag
diff --git a/build.xml b/compiler/build.xml
similarity index 100%
rename from build.xml
rename to compiler/build.xml
diff --git a/tools/JFlex.jar b/compiler/tools/JFlex.jar
similarity index 100%
rename from tools/JFlex.jar
rename to compiler/tools/JFlex.jar
diff --git a/tools/beaver-rt.jar b/compiler/tools/beaver-rt.jar
similarity index 100%
rename from tools/beaver-rt.jar
rename to compiler/tools/beaver-rt.jar
diff --git a/tools/beaver.jar b/compiler/tools/beaver.jar
similarity index 100%
rename from tools/beaver.jar
rename to compiler/tools/beaver.jar
diff --git a/tools/jastadd2.jar b/compiler/tools/jastadd2.jar
similarity index 100%
rename from tools/jastadd2.jar
rename to compiler/tools/jastadd2.jar
diff --git a/tools/proj.jar b/compiler/tools/proj.jar
similarity index 100%
rename from tools/proj.jar
rename to compiler/tools/proj.jar
diff --git a/examples/simple/compile.sh b/examples/simple/compile.sh
index dc8883233eaecae7b7e0f9fec27f17ba543149b6..8b8d9de126a5182ca1583f6e6637914a2d98ac16 100644
--- a/examples/simple/compile.sh
+++ b/examples/simple/compile.sh
@@ -1,7 +1,7 @@
 (cd ../../lib/c; make)
-(cd ../../ ; ant jar)
+(cd ../../compiler ; ant jar)
 
-java -jar ../../labComm.jar --java=gen --c=gen/simple.c --h=gen/simple.h  simple.lc 
+java -jar ../../compiler/labComm.jar --java=gen --c=gen/simple.c --h=gen/simple.h  simple.lc 
 
 javac -cp ../../lib/java:. gen/*.java Encoder.java Decoder.java
 
diff --git a/examples/wiki_example/run b/examples/wiki_example/run
index 5e0719b8d6b25986e0ce032c481d11abf1f70e73..9d92539e3238aa5d9a0bd3266cd4743cd07e725f 100755
--- a/examples/wiki_example/run
+++ b/examples/wiki_example/run
@@ -1,7 +1,7 @@
 #!/bin/sh
 
 # Auto generate code from .lc file
-java -jar ../../labComm.jar \
+java -jar ../../compiler/labComm.jar \
   --c=example.c --h=example.h \
   --java=. \
   --cs=example.cs \