rebase
unit test for secret file discovery
add CHANGELOG for pr/1577
Merge pull request #2031 from opscode/lcg/1577

Rebase and ChangeLog for PR 1577
Spec fixes for Windows:
  - Switch pwd environment variable depending on platform.
  - Hardcode the temp file name instead of using described_class: Windows doesn't like ':' in paths.
Fix typo.
Merge pull request #2035 from opscode/fix-configload-specs-windows

Spec fixes for Windows
First-pass changes for a core reboot resource. Still uses run_state instead of run_context.
Move reboot data into run_context. (Dan D. confirms his prior opinions from https://github.com/opscode/chef/pull/1279#discussion-diff-9964101.)
Log shutdown command string.
'timeout' -> 'delay_mins'; add a run_context() shim for RebootPending.
Add spec/functional/resource/reboot_spec.rb.
Add unit spec for reboot data in RunContext.
Various tidying-up.
-h is halt, -r is reboot.
reboot_pending? no longer has unsupported platforms, so remove the test for it.
Remove the timestamp attribute, which isn't actually settable by the user.
In specs, and possibly elsewhere, Chef::DSL::RebootPending can get mixed in without a #node available. Decline to crash in those situations.
For deciding whether or not to actually reboot, use *only* our internal implementation, ignoring any system indicators. In other words, only reboot when someone has requested it from the reboot resource.
Switch from class variables to class instance variables; tweak temporary logging a bit.