[EDIT] Re-working this description based on feedback in comment #7.
User installs module A to provide a web application.
User installs module B to provide a database server.
Both module A and module B declare a package resource for foo.
User declares classes from both module A and B on the same node.
User receives duplicate resource declaration error, Puppet run fails.
I wish to prevent customers of Forge and Puppet from experiencing this frustration, when both classes really do need that package for their functionality but cannot be used together as-is. I'd love direct questions if you need to understand this better from my perspective.