Numerous optimizations and cleanup for Yuni::Process::Program on Unix

Yuni::Process::Program has been partially revamped. The code has been
cleanup and optimized quite a lot:

 * A precision can now be set for calculating the execution time of the
   subprocess. The possible values are: none (disabled), seconds (the
   default) and milliseconds.
 * 'poll' is now used on Unix instead of an active loop to wait
   for the subprocess.
 * less memory allocation
 * Better separation between the Unix and Windows specific source code.
sample Yuni::Process::Program: fixed variable uninitialized
Yuni::Process::Program do no longer automatically redirect the output of the
subprocess to the standard output of the parent process.