allow templates to be read from external files