fixes #59 - adds a generator context which uses a ThreadLocal to store the list of generated files