WiP: Add machine reboot support

This PR adds changes in the machine agent needed to support reboot.

Depends on:

https://github.com/juju/juju/pull/707
https://github.com/juju/juju/pull/728
https://github.com/juju/juju/pull/744
https://github.com/juju/juju/pull/782
If its all the same, I would prefer to change this in a subsequent PR that is not linked to the reboot functionality. If you would prefer I do it in this PR, I will though :).