(CFACT-124) Refactoring operating system resolver.

Refactroing the operating system resolver into a base that is
responsible for adding the facts and child types that are responsible
for collecting data.  This allows it to be shared with Windows.