* Guardians: CHECK - Implement guardians. CHECK - clean up after file ports are dead by flushing/closing the underlying file handle. * Interrupts: - pcb should have an engine-counter field that's decremented on every procedure call. - an engine-expired procedure must be called when the counter goes negative. It should capture the current continuation and reschedule the process. - figure out what to do when a process gets interrupted while reading from a file. - Implement [CTRL-C] keyboard interruption with the ability to resume the computation, reset to the repl, or terminate the program (at least for now). * FFI: - provide a general mechanism for calling foreign procedures without having to extend the VM. (foreign-call void: FOO int32: x char*: y ptr: z) - may dump the bignum stuff in the VM and move it to scheme.