Add a Reboot resource into core. (RFC code.)

For ease of testing, the actual reboot is commented out.
Thoughts on moving the logic to select the correct reboot implementation into Chef::Platform and keeping the implementations for each platform in their own file?