1. A method for managing software updates to a virtual machine, the virtual machine for use on a plurality of systems and devices making use of the virtual machine, the method comprising: retrieving the virtual machine; executing the virtual machine in a virtual machine monitor on a computer system; applying one or more updates to the virtual machine to create an updated virtual machine; performing one or more automated tests on the updated virtual machine using the virtual machine monitor on the computer system; and determining that the one or more automated tests were successful, and consequently generating a signal indicating that the virtual machine has been updated and that the updated virtual machine is available for use on the plurality of systems and devices making use of the virtual machine.