Use simpler DSL for declaring external commands.

When a fact is simply the result of running an external command, a block isn't
needed - just the command string.

This changes a bunch of facts to use that shorter, simpler form as an example
to those who follow about how they should be declared.

Signed-off-by: Daniel Pittman <daniel@puppetlabs.com>

Conflicts:
	lib/facter/physicalprocessorcount.rb
	lib/facter/processor.rb
(FACT-357) Raise errors when command execution fails

The behavior of returning an empty string when a command cannot be run
is surprising and makes it impossible to determine if a command failed
to run or simply had no output. This commit allows users to determine if
an error should be raised on error, or if a default value should be
returned instead. It also updates calling code to respect this new
behavior.
(FACT-357) Extract virtual fact vmware resolution
Merge pull request #651 from adrienthebo/bugfix/stable/fact-357-lsb_empty_string_output

FACT-357 Raise errors when executing non-existent commands