An object VM