Rename RecipeInterface::setListener() to RecipeInterface::addListener()