refactoring VM to be a bit more 'goop' specific
also taking on some properties of the parrot vm