new Execution::Function<> template to try and provide callback cabability (compare)