allow greeting and closing to be functions