adding templates and template plugin for cpp