If you're looking at Drupal 7's new database layer for the first time it may seem like a convoluted mess of objects passing around to each other needlessly. Why so complicated?
If, however, you understand the concept of command objects, factories, and dependency injection, and are able to recognize their telltale signs then everything comes into focus. The code itself is just as complex, but because it's a common and often-used type of complexity it is easier to understand.