Extract types into separate file
Added vm.h
Stubs for code generation