:param files: A list of file paths :: [str]
    :param encoding: Encoding, e.g. 'utf-8'

def _load_file_itr(files, encoding):
    """
    :param files: A list of file paths :: [str]
    :param encoding: Encoding, e.g. 'utf-8'
    """
    for filename in files:
        fileobj = jinja2.loaders.open_if_exists(filename)
        if fileobj is not None:
            try:
                yield (fileobj.read().decode(encoding),
                       os.path.getmtime(filename))
            finally:
                fileobj.close()