A virtual machine I have been working on and off.