Add support for asynchronous restarts

We use Memmon to monitor processes that take a long time to start. Memmon waits so long for them to come up that it's event buffer overflows and things can get to the point where it can't stop processes as fast as they blow the memory cap. It would be nice to be able to rely on memmon to keep things under control even in pathological circumstances like that. This pull request introduces an option to do asynchronous restarts so memmon is not forced to wait for the process to finish launching. As a result some types of errors won't get written to the log or emailed but for us, and I believe for others, that's acceptable.