Initial delayed action. Needs better error reporting and to spawn less p...

...rocesses.
@isupeene Compile details in compile.txt. Still needs to give a useful error message if the underlying system call fails. Also made it fork for now but the problem says we should limit the number of processes we spawn. I am thinking we have to either fork or thread. If we thread though we might want to make this a class that becomes its own process that then spawns threads per delayed_action and the class has a function that just never ends so the threads are not prematurely terminated.
If the `args` aren't used for anything but yielding, would it make sense to omit them, and simply refer to the required variables in the block itself?