We should check that puppet_user is actually set, as it's optional.  If `ENV['USER']` wasn't present and the user hadn't specified this setting, we might skip using sudo.  Maybe...

    unless ENV['USER'] == (SETTINGS.puppet_user || 'root')

It might be good to use `Etc.getlogin` instead of ENV and add `require 'etc'`, but that's a nitpick.