changed to use variadic template feature.
renamed execute_once.