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>
Add support to archive (ZIP) test result files.

Use command line options `run --archive ...` to create an archive
with all files created by the tests.

Signed-off-by: Ruda Moura <rmoura@redhat.com>
avocado.utils.remote: Provides remote operations.

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.
Merge pull request #65 from ruda/archiver

Add support to archive (ZIP) test result files.
Merge pull request #66 from ruda/remote

avocado.utils.remote: Provides remote operations.
avocado.utils.virt: classes for using VMs.

Signed-off-by: Ruda Moura <rmoura@redhat.com>