(#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).