lib/tst_res.c: introduce tst_record_childstatus()

In case we need do real test work in child process parent process can
use tst_record_childstatus() to make child process's test results
propagated to parent process correctly.

The child can use tst_resm(), tst_brkm() followed by the tst_exit() or
plain old exit() (with TPASS, TFAIL and TBROK).

WARNING: Be wary that the child cleanup function passed to tst_brkm()
         must clean only resources the child has allocated. E.g. the
         child cleanup is different function from the parent cleanup.

This commit also changes tst_fork() to reset the stored result value
(T_exitval in the sources) which is not strictly needed but it's cleaner
and will ease debugging.

Signed-off-by: Xiaoguang Wang <wangxg.fnst@cn.fujitsu.com>
Signed-off-by: Cyril Hrubis <chrubis@suse.cz>
doc: add "doing real test in the child process" paragraph

Add description of the newly added tst_record_childstatus() function
and a paragraph that describes best practices for using tst_* interface
from a child process.

Also fixes all NOTEs that forbids using tst_* interface from child
process.

Signed-off-by: Xiaoguang Wang <wangxg.fnst@cn.fujitsu.com>
Signed-off-by: Cyril Hrubis <chrubis@suse.cz>