Test execution isolation using subprocesses and timeout feature

Execute avocado tests in a forked subprocess to avoid tests to mess with the main avocado process environment. Also, allow tests to set timeouts.