(FACT-599) Don't hardcode location of `sysctl`

`sysctl` is found in `/sbin` on OpenBSD but is in `/usr/bin` on OSX.
Because we can't assume the location it's easier to allow
`Facter::Core::Execution.which` to locate the executable to invoke.
Merge pull request #704 from adrienthebo/bugfix/facter-2/fact-599-sysctl-path

(FACT-599) Don't hardcode location of `sysctl`
(FACT-601) Format plaintext output for non-string values

Without this commit, structured facts outputted as plaintext are
printed using `#to_s`, which is useless on ruby 1.8.7:

    $ facter partitions
    sda1mount/bootsize1024000uuid7de786a9-be75-4711-b782-fb26aec963d4sda2size975747072sda3size2047

This commit changes the outputting to format non-string values using
`#inspect` which produces much more usable values:

    $ facter partitions
    {"sda1"=>{"uuid"=>"7de786a9-be75-4711-b782-fb26aec963d4", "size"=>"1024000", "mount"=>"/boot"}, "sda2"=>{"size"=>"975747072"}, "sda3"=>{"size"=>"2047"}}
Merge pull request #705 from adrienthebo/bugfix/facter-2/fact-601-structured-facts-plaintext-output

(FACT-601) Format plaintext output for non-string values
(FACT-570) Pin facter to vendored ruby and ffi'ed gems on Windows

The acceptance setup step did not specify which revision of the vendored
ruby to install, relying on the default branch.

This commit makes it explicit as facter-2 depends on ffi-based windows
gems that are only available in the 1.9.3-x86 branch.
Merge branch 'facter-2' into stable
Merge branch 'stable' into facter-2
Merge branch 'facter-2'

Conflicts:
	lib/facter/util/posix.rb
(maint) Resolve conflict markers in lib/facter/util/posix.rb