Added sketch for VM

DO NOT MERGE
This is just a sketch.
Please comment.
Killed `internal_value` for now, let's keep it as a first hidden property in the list.