Speeding up data copying by refactoring Function::Implementation.
Using variadic templates for change of variables.
Better test adding vars in non-standard order.