suse platform: read /etc/SuSE-release only once.

doing it twice is (slightly) inefficient and complicates the tests
[OHAI-339] distinguish openSUSE from SUSE Linux Enterprise

- platform_family: stays "suse" for both
- platform: SLE, being the more stable platform,
                 gets to keep platform "suse"
            openSUSE is now platform "opensuse"
- platform_version: is "MAJOR.MINOR" even for SLE which officially is
                    versioned as "MAJOR [SP MINOR]"

I considered to change the platform only for *future* openSUSE
versions (12.3 or later) but decided against it: "suse" >= 12 would
then conflict with a future SLE 12 (scheduled for 2014).
Disable root_group on Windows

Fixes OHAI-490: http://tickets.opscode.com/browse/OHAI-490

Implementation of root_group for windows has been found to have poor
performance when the host is joined to an AD domain. Opting to disable
on Windows since large changes will be required for a performant
implementation.

Cherry-picked from master for 6-stable.

Conflicts:
	spec/unit/plugins/root_group_spec.rb
Merge branch 'OHAI-490-6-stable' into 6-stable
Bump version for RC4
Version update to 6.18.0 GA
Revert "Merge branch 'OHAI-489'"

This reverts commit 3d669f4cc38f4f3a32aa0a7062375c210bc480ed, reversing
changes made to d338698f288d08379bb36611f93a3a8db7ff45f5.

Commit 4286efe042ac74e2b90453a742fc6f752ab9df78 is a "hotfix" for
OHAI-489. The upcoming patch for OHAI-412 will introduce a structural
fix for the root cause of OHAI-489, making the hotfix unnecessary.
[OHAI-412] Split Ohai::System responsibilites into 2 classes
[OHAI-412] fix uptime plugins for seconds_to_human change

Previously there was a _seconds_to_human method defined by the top level
uptime plugin, but this was moved to a mixin and the leading underscore
removed from the method name.
[OHAI-412] fix missing stubs in darwin kernel spec

Some popen commands weren't being stubbed so the tests fail on windows.
[OHAI-412] fix missing stub in linux kernel plugin

Was causing spec failures on windows
Update new specs for plugin class split

Rebased from 3967b5a3fd619dc392b8bf5dd2554d822a8fd400 to
d338698f288d08379bb36611f93a3a8db7ff45f5. Fix tests added in the interim
to correctly setup Ohai::System and plugin classes.
Fix ruby warnings Config => RbConfig

Fixes warnings like:
  spec/unit/plugins/ruby_spec.rb:44:in `block in <top (required)>': Use
  RbConfig instead of obsolete and deprecated Config.

RbConfig is available at least as far back as 1.8.7.
OHAI-412: fix provides collection w/ plugin objects
OHAI-412 allow attribute access via System objects
Configure bundler for HTTPS
Replace all calls to `stub!` with `stub`

`stub!` is deprecated as of RSpec 2.14.x.
replace all calls to `mock` with `double`

`mock` is deprecated in RSpec 2.14.x
Replace deprecated should_receive(:m).any_number_of_times

In Rspec 2.14.x, `should_receive(:m).any_number_of_times` is deprecated
and should be replaced with just `stub(:m)`
include chef as a dev dependency

Otherwise the chef plugin does not run when tests are run with `bundle
exec`