I read some definitions on Wikipedia but I don't think my Manager classes fall under the God object category
I know. I tried to preempt this in my last response:
You may not immediately feel like this is the case [...]
...but I'm not sure why. I knew it wouldn't do any good anyway when I was typing it :p
The Wikipedia (and most descriptions) are a really basic "God objects just do too much stuff" sort of definition. Most people just follow the general rule-of-thumb that anything that has a "Manager" (or something similar, highlighted in my last post) is a red flag and end up accidentally creating God classes which don't require the word "Manager"--this is the main reason I pointed out the CoffeeMaker example. Your example is more explicit, though, since it uses these names.
These sorts of naming schemes ("manager", "system", etc) are a bad idea outside of the whole "God object" argument because they don't convey the responsibility of the class. What is a "manager"? What does that mean? Does it manage the lifetimes of the objects? The communication between them? Access to them? Updating them? What? All of the above and more? For instance, if you were looking to wrap what was essentially a collection of entities into a more abstract class form, you might call it an "EntityPool", as object "pools" are common and their intent is well defined.
because they don't really do that much by themselves; they delegate a lot of responsibility to entities; it's like a company and employees; the company may looks like it does a lot, but the employees are the ones doing all the actual work.
The idea is that objects should be wired together when they're created, and then act as a system from there--there generally should not need to be a "manager" or a "coordinator" or anything like that acting as an intermediary for them. "Wiring" can be done in a factory without too much fuss. A loose analogy to networking would be a star topology versus a mesh topology.
Passing this system (or parts of it) around in your program can be difficult. The solution to this problem relates heavily to your perception of your manager objects and can be answered in (since we're talking patterns) the Facade pattern. The Facade is essentially an interface to the interconnected system of objects that you should be creating, which acts as a simple delegation mechanism, as you described.
Facades aren't too bad, but can be limiting in some cases. When you start adding additional behavior to a Facade, in particular using it as a way to pass messages back and forth from the objects it "wraps", it becomes a Mediator (and tends to require its dependencies to send events for communcation). The Mediator pattern, unfortunately, is essentially a borderline God object.
Mediators, even used appropriately, have a tendency to become complex, dependency heavy, and are pretty much never reusable (which sucks since they're generally complex). As well, they generally force their 'colleagues' to employ observers/events for communication with the mediator (though this is also advantageous for other reasons), building on the complexity.
Sometimes you gotta race, though. While my own personal philosophy is to avoid them where possible and reasonable, they do have their advantages. The situation you mention is one of the places it is, in fact, commonly implemented--though not ubiquitously. Just be careful, I guess.