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
again this is an *awfully* long test. would you break it up as you did in 707 please?