retry on HTTP 50X Error when calling Chef REST API
read http_retry_count from chef config in the spec; add HTTP error code in the log.
Transfer trusted certs during bootstrap
add trusted_certs_dir to generated config
Use :trusted_certs_dir from Chef::Config, only grab .crt and .pem files
Fetch certs in bootstrap_context.rb, not in templates to avoid copypasta.
Look for certs only if :trusted_certs_dir is not nil
Stub reading of validation key
reliably stub cert transfer tests
Update for trusted cert transfer during bootstrap.
[master/12] Fix whyrun_safe_ruby_block regression

`whyrun_safe_ruby_block` broke in the 11 changes.

Forward port of #2021
Fix setting Path for Windows
Detect invalid X509 certificates.
Refactor X509 certificate validation and debugging.
Use stronger wording in warn message
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.