(#22334) Use Facter's logging system for warn

Several points in facter would use ruby's built in warn method, which always
prints to stderr. This made unstoppable messages show up on the stderr such
as:

  [vagrant@localhost ~]$ facter virtual
 Could not retrieve virtual: Permission denied -
/sys/firmware/dmi/entries/1-0/raw
 virtualbox

By using facter's normal logging system, the user has control of these 
showing up and they won't end up in stderr (which might be going nowhere in a
daemonized process).