plainvm.js partitioned into different files