Separated the Invoker and Function interfaces.