(CFACT 70) Add posix facts id and timezone to solaris

This patch adds the posix timezone and id facts (unchanged) to solaris
These are the only posix facts left that can be added directly to solaris
without change in behavior.
(CFACT 70) Correct the operating system resolver to match facter

Previously, cfacter output for osfamily (SunOS), operatingsystemrelease(5.10),
and operatingsystem (SunOS) depended on the posix implementation. However,
the ruby facter implementation provides osfamily (Solaris),
operatingsystemrelase (10_u11), and operatingsystem (Solaris) which are
different from the barebones posix. This patch corrects the cfacter so that
it outputs values matching ruby facter.
(CFACT 70) Correct the kennel resolver to match facter for solaris

Previously, cfacter output for kernelversion and kernelmajorversion (5.10),
were not in line with the ruby facter output (Generic_xxx).
This patch corrects the cfacter so that it outputs values matching ruby facter.

To do this, the kernelversion and kernelmajorversion needs access to the uname
output. This patch adds two virtual functions that are wrappers of the
originals that can take uname output, and are called instead by the
resolve_facts method.