(FACT-699) Create system32 fact to resolve native system32 directory

Adds a `system32` fact which resolves the "real" system32 directory for both
32 and 64-bit ruby versions. This way you can write a manifest that simply
does:

    exec { "$::system32\\cmd.exe ...": }

and it will always execute 64-bit cmd.exe on 64-bit operating systems,
regardless of the ruby architecture facter happens to be running on.

Note the fact is implemented by stat'ing the filesystem, because there is no
CSIDL constant that resolves to sysnative. For example, Dir::SYSTEM resolves to
'C:\Windows\system32' and Dir::SYSTEMX86 resolves to 'C:\Windows\SysWOW64',
but there isn't a Dir::SYSNATIVE.
(FACT-699) Add `rubyplatform` fact

Adds a rubyplatform fact so that manifest authors that need to customize
behavior for 32 vs 64-bit ruby can do so, e.g.

    if $rubyplatform =~ /x64/
      # 64-bit
    else
      # 32-bit
    end

On Windows, common `rubyplatform` values are:

    i386-mingw32
    x64-mingw32

On Linux:

    x86_64-linux
Merge pull request #801 from joshcooper/ticket/stable/FACT-699-system32

(FACT-699) Add `rubyplatform` and `system32` facts