Added submodules and template engine