The example was using a system constructor with a kill destructor, but I don't think those two work together. I prefer having the application run in the foreground and using the shepherd way of forking so I have more control.