Only reboot a vm if necessary

I'd like to get to a point where we can run a command such as:

    fab staging puppet_class:govuk::safe_to_reboot::yes numbered:1 vm.reboot

This commit makes such a command more palatable by only rebooting the
machines which actually have outstanding packages which require it.

For those occasions where you want to reboot regardless of packages,
I've added vm.force_reboot to allow you to do that.
What does `fab -l` look like with multiline descriptions? I've not seen any before, and I'm wondering if it looks a bit messy, if we should keep the first line, and put the example in `README.md`?