Remove complexity when creating test results and jobs.

- Change TestResult constructor signature to accept two parameters:
stream and args, everything else is passed inside args.

- Method test_runner() is now calling start_tests() and end_tests(),
  so it is the owner of all methods for test results.

Signed-off-by: Ruda Moura <rmoura@redhat.com>
Remove complexity of Job class by creating TestRunner class.

There's a role for a standalone TestRunner class,
so move some parts of Job to testRunner.

Improve documentation too.

Signed-off-by: Ruda Moura <rmoura@redhat.com>
Merge pull request #64 from ruda/job_testresult_refactory

Remove complexity when coding test results, runners and jobs.