First draft IPC implementation, untested.