diff --git a/TODO.md b/TODO.md
index 610b7c8..484edcc 100644
--- a/TODO.md
+++ b/TODO.md
@@ -5,4 +5,3 @@
 * [x] fix overlong table cells (pandoc longtable only deals with overlong tables but not cells)
 * [ ] add a book mode for mixing input and headers (# Blah -m mod.cg.yaml)
 * [ ] table generator
-* [ ] overlay of compulsory with other modes ... 
\ No newline at end of file
diff --git a/coursebuilder/__main__.py b/coursebuilder/__main__.py
index 43f67db..2ce0fc5 100644
--- a/coursebuilder/__main__.py
+++ b/coursebuilder/__main__.py
@@ -13,17 +13,18 @@ actual values are kept in YAML files in order to version them with git.
 from argparse import ArgumentParser
 import yaml
 import string
-import os,sys
+import os
 
 from tablegenerator import TableGenerator
 from markdowngenerator import MarkdownGenerator
-from templategenerator import TemplateGenerator
+
 
 class CourseBuilder:
 
     def __init__(self) -> None:
         self.__schema = None
 
+    
     def set_schema(self,schema = None):
         self.__schema = schema
 
@@ -110,7 +111,7 @@ class CourseBuilder:
         return [k,', '.join(parts)]
 
 
-    def process(self,meta,fields = [],lang = 'de',pagebreak = False,createTitle=False,header_level=1,template=None):
+    def process(self,meta,fields = [],lang = 'de',pagebreak = False,createTitle=False,header_level=1):
 
         table_items = []
 
@@ -122,13 +123,8 @@ class CourseBuilder:
                 case 'multinum' : table_items.append(self.process_multinum(meta,field,lang))
                 case 'multikey': table_items.append(self.process_multikey(meta,field,lang))
 
-        if template != None:
-            # use template generator
-            TemplateGenerator.generate(table_items,pagebreak,createTitle,header_level=header_level)
-            pass
-        else:
-            # conventional MD mode
-            MarkdownGenerator.generate(table_items,pagebreak,createTitle,header_level=header_level)
+        mdg = MarkdownGenerator()
+        mdg.generate_markdown(table_items,pagebreak,createTitle,header_level=header_level)
 
     def process_book_section(self,section,lang='de'):
         pass
@@ -149,10 +145,7 @@ class CourseBuilder:
                             mod_path = os.path.join(os.path.dirname(bookpath),m)
 
                             with open(mod_path) as fm:
-                                try:
-                                    self.process(yaml.load(fm,Loader=yaml.Loader),fields=actual_fields,lang=lang,pagebreak=pagebreak,createTitle=create_title,header_level=header_level)
-                                except:
-                                    print(f'Error in {mod_path}',file=sys.stderr)
+                                self.process(yaml.load(fm,Loader=yaml.Loader),fields=actual_fields,lang=lang,pagebreak=pagebreak,createTitle=create_title,header_level=header_level)
 
 
 
@@ -172,7 +165,7 @@ def main():
     parser.add_argument('-b','--book',type=str,help="process a whole curriculum book with sections")
     parser.add_argument('--level',type=int,default=1,help="level of header tags")
     parser.add_argument('--table-gen',type=str,default=None,help='runs table generator')
-    parser.add_argument('--template',type=str,default=None,help='defines a template to be used with fields')
+    
     
     # get arguments
     args = parser.parse_args()
@@ -218,8 +211,7 @@ def main():
 
         for m in args.meta:
             with open(m) as fm:
-
-                cb.process(yaml.load(fm,Loader=yaml.Loader),fields=actual_fields,lang=args.lang,pagebreak=args.pagebreak,createTitle=args.title,header_level=args.level,template=args.template)
+                cb.process(yaml.load(fm,Loader=yaml.Loader),fields=actual_fields,lang=args.lang,pagebreak=args.pagebreak,createTitle=args.title,header_level=args.level)
     else:
         parser.print_help()
 
diff --git a/coursebuilder/markdowngenerator.py b/coursebuilder/markdowngenerator.py
index ad78b49..f7ff98a 100644
--- a/coursebuilder/markdowngenerator.py
+++ b/coursebuilder/markdowngenerator.py
@@ -4,10 +4,11 @@ import textwrap,itertools
 
 
 class MarkdownGenerator:
+    def __init__(self) -> None:
+        pass
 
     
-    @staticmethod
-    def generate(ti,pagebreak = False,title = False,header_level = 1) -> str:
+    def generate_markdown(self,ti,pagebreak = False,title = False,header_level = 1) -> str:
 
         line_length = 128
         column_ratio= 0.28
@@ -15,9 +16,6 @@ class MarkdownGenerator:
         h_len = int(line_length * column_ratio)
         d_len = line_length-h_len
 
-        #
-        #  generate title (currently the first one)
-        # 
         if title:
             print('#' * header_level,ti[0][1],'\n')
 
@@ -28,6 +26,7 @@ class MarkdownGenerator:
         #
         # this implements a Markdown Grid-Table
         #
+
         for k,v in ti:
 
             if v == None:
diff --git a/coursebuilder/templategenerator.py b/coursebuilder/templategenerator.py
deleted file mode 100644
index 0e7a23a..0000000
--- a/coursebuilder/templategenerator.py
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/usr/bin/env python
-
-import textwrap,itertools
-
-
-class TemplateGenerator:
-
-    @staticmethod
-    def generate(ti,pagebreak = False,title = False,header_level = 1) -> str:
-        print(ti)
-        pass
\ No newline at end of file
diff --git a/test/simple/Makefile b/test/simple/Makefile
index 02c04ef..8ea5c11 100644
--- a/test/simple/Makefile
+++ b/test/simple/Makefile
@@ -1,22 +1,17 @@
-
-coursebuilder := ../../coursebuilder
-
 table.en.pdf:
 	@echo "creating English version ..."
-	python ${coursebuilder} -s schema.yaml -m mod.cg.yaml -l en -f fields.yaml | pandoc --template pandoc-template/eisvogel.latex -o table.en.pdf
+	python ../../coursebuilder -s schema.yaml -m mod.cg.yaml -l en -f fields.yaml | pandoc --template pandoc-template/eisvogel.latex -o table.en.pdf
 
 table.de.pdf:
 	@echo "creating German version ..."
-	python ${coursebuilder} -s schema.yaml -m mod.cg.yaml -l de -f fields.yaml | pandoc --template pandoc-template/eisvogel.latex -o table.de.pdf
+	python ../../coursebuilder -s schema.yaml -m mod.cg.yaml -l de -f fields.yaml | pandoc --template pandoc-template/eisvogel.latex -o table.de.pdf
 
 all: table.en.pdf table.de.pdf
 
 clean: 
 	rm -f table.en.pdf table.de.pdf
 
-debug-list:
-	python ${coursebuilder} -s schema.yaml -m mod.cg.yaml mod.interactsys.yaml -l de -f name credits --template ""
 
 debug:
-	python ${coursebuilder} -s schema.yaml -m mod.cg.yaml -l de -f fields.yaml
+	python ../../coursebuilder -s schema.yaml -m mod.cg.yaml -l de -f fields.yaml
 
diff --git a/test/simple/book.yaml b/test/simple/book.yaml
index f8544df..6cd1b46 100644
--- a/test/simple/book.yaml
+++ b/test/simple/book.yaml
@@ -29,5 +29,3 @@ book:
     - modules: 
         - mod.cg.yaml
 
-
-