Make GearExecutor an interface