Co-evolution of Metamodel and Generators: Higher-order Templating to the Rescue