Updates to the facter grain

* Have facter return json data, rather than parsing its ruby hash
  output.
* Have facter load the puppet libraries so that puppet-specific
  facts are also loaded.