Run the agent in a child process during catalog application
The idea is that during catalog application the puppet heap
might grow quite large. And unfortunately in MRI the heap never
decreases, so you're stuck with a large process doing nothing and
not using the memory it allocated until the next run.
The solution is to fork and do the puppet run in a child process.
At the end of the catalog run, the process exits freeing memory to
the OS until the next run.
Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>