Move runFile() and VM configuration logic from main.c into new vm.c module, exposing createVM() and runFile() functions. This decouples CLI script execution from the REPL and main entry point, enabling reuse of the same VM setup and file-running code for API tests.