Complete VM Implementation first pass