Respecfully, I think that done right it actually adds simplicity. If everything is a node, then you have one model, one framework. All nodes answer to the same api, and all nodes can benefit implicitly from new functionaily introduced in the rest of the system.
In the 20 minutes it took for the discussion to take off, my thinking has changed on this. ;) My subsequent 6-part bullet list outlines a more flexible approach. Heh. You might not agree, but I think that while LOTS of files should be nodes, the underlying concept of a 'file' is different and should probably have a bit more flexibility. Links.module does this sort of abstraction for weblinks -- instead of making a dedicated node for each outgoing link, it manages links on its own and provides a 'weblink' node to expose specific links as nodes. This allows other modules (a blogroll, or a 'my favorite sites' list for each user) to use the same infrastructure without simply creating a huge cloud of nodes. It also means that if Link X needs to be changed or redirected, all nodes/etc that use it benefit from the change. That's something that files can definitely benefit from. --Jeff