So, I generally don't see Munki and Puppet as occupying the same space. Munki is package management - it excels at installing and removing packages from your Macs in a way that is most harmonious to your users. It will present a nice GUI window that looks identical to Software Update (so it's very familiar) and allow the user to choose when their updates are installed. You CAN force updates upon users, but Munki's allure is its graceful system-installation set. If you want Munki to manage any other aspects of your computer, then you need to package it up. Wanna make a change? Create a package. At its core it's essentially something similar to Yum or Apt in the Linux world, no? In the same way you can "yum install firefox" you can add Firefox to a Munki manifest and push it to the user.
Puppet is CONFIGURATION MANAGEMENT - so it is focused on an ideal state for your computer. Maybe you want to ensure that this service is always running, or that these config files are ALWAYS identical. Perhaps you ne