Your comments

In these cases, we need to weight which solution we should go for. The first one is the middle man has too many methods that simply delegate to other objects while the second one wants to hide the delegate. Both problems are quite vague in my opinions. We should try both to see if it solves our current code design.