WiP: Added apiserver endpoint for reboot

This is the second pull request for the reboot implementation. Please note that this is still a Work in Progress and a followup commit will be done for cleanup.

This branch depends on: https://github.com/juju/juju/pull/707
sorry, didn't spot this before -- what's the distinction between a result.Error, and this error? might it be best to make this method just return result and put *any* error into Error?