After waiting a few days, still no answers posted - I think that's probably because there really is no way around this other than writing the cut() wrapper function. I am posting my version of it here and marking the question as answered. I will change that if new answers come along.