[0.4.0] added explicit template pathing (breaking changes), overwrite protection, and refactoring