diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index ce7ee8d784f5f9a2654e0926a1888ae442fba238..e830f6c810ab1ef09d5ac64d25a43da252e509cd 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,15 +1,8 @@
 compile_pdf:
   image: aergus/latex
   script:
-    - pdflatex main.tex
-    - makeglossaries main
-    - makeindex main.idx
-    - pdflatex main.tex
-    - mv main.pdf bind.pdf
-    - cd CS
-    - pdflatex resources.tex
-    - cd ..
-    - mv CS/resources.pdf .
+    - make resources
+    - make
   only:
     - master
     - run
diff --git a/CS/resources.tex b/CS/resources.tex
index dab1b9980e6a1050b7c815abb0e1b9a1d27dd4f4..41f1b820308a3de9e02423724363efe2c97a5575 100644
--- a/CS/resources.tex
+++ b/CS/resources.tex
@@ -1,28 +1,27 @@
 \documentclass[a4paper,openany]{report}
-\usepackage{glossaries}
 
-\input{../config/preamble.tex}
-\input{../config/monsters.tex}
+\usepackage{config/bind}
+\usepackage{config/monsters}
 
 \settoggle{verbose}{true}
 
 \begin{document}
 
-\input{GS.tex}
+\input{CS/GS.tex}
 
-\input{CS.tex}
+\input{CS/CS.tex}
 
-\input{CS.tex}
+\input{CS/CS.tex}
 
-\input{CS.tex}
+\input{CS/CS.tex}
 
-\input{CS.tex}
+\input{CS/CS.tex}
 
-\input{CS.tex}
+\input{CS/CS.tex}
 
-\input{CS.tex}
+\input{CS/CS.tex}
 
-\input{init.tex}
+\input{CS/init.tex}
 
 \end{document}
 
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..9247a3dcd037e4d4b3f046ee4e48f16c9a585fe7
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,20 @@
+filename=main
+branch := $(shell git rev-parse --abbrev-ref HEAD)
+output: main.pdf main.aux
+	pdflatex ${filename}.tex
+main.aux:
+	pdflatex ${filename}.tex
+main.pdf:
+	pdflatex ${filename}.tex
+resources:
+	pdflatex CS/resources.tex
+	cd ..
+	mv main.pdf bind.pdf
+tree:
+	[ -e ../config ] || ( echo "You don't have a local config repo" && exit 1 )
+	git status
+	git subtree -P config pull ../config ${branch}
+	git subtree -P config push ../config ${branch}
+
+clean:
+	rm *.aux *.toc *.acn *.log *.ptc *.out *.idx *.ist *.glo
diff --git a/autocompile.sh b/autocompile.sh
deleted file mode 120000
index fc81db84db72aec32971bc4c1d6b91dfa27d8f18..0000000000000000000000000000000000000000
--- a/autocompile.sh
+++ /dev/null
@@ -1 +0,0 @@
-config/autocompile.sh
\ No newline at end of file