Fix unittest for true headers..
Add support for using txsocksx inside of oonibclient.
Start adding support for using txsocksx inside of oonibclient.

There is some badness happening because we use the httpo (HTTP over Tor Hidden
Service) as the scheme name.
Do not swallow failures in http_requests

The callback attached to the deferredList previously swallowed failures,
such that any errors would never reach the errbacks attached and
therefore the test would not get rescheduled.
Merge branch 'fix/do_not_swallow_failures_in_http_requests' into feature/use_txsocksx
Fix ambiguity in what a ReportEntryTask does

ReportEntryTask can be passed dicts, Measurements, or Failures
Make the director pass Measurements to the report

Simply passing a failure instance does not provide any contextual
information, such as the input that was used, or headers. Instead, we
should always write the report object, even in case of failure, and
NetTests should try to add useful information to the report in their
errbacks.
Merge branch 'fix/reportWriteEntry' into devel
Take an instance rather than class

Measurements should be able to take an instanced class so that the
resulting report can be shared between several Measurements.
Add postProcessor support to NetTest

If a NetTestCase has multiple test_ methods, then the report write shall
not occur until all of the individual Measurements have completed.

This also changes the postProcessor API slightly; postProcessors are now
expected to return a report instance. If a postProcessor is not
supplied, then the report object from the instanced NetTestCase class is
passed to Report.write()
Take an instance rather than class

Measurements should be able to take an instanced class so that the
resulting report can be shared between several Measurements.
Add postProcessor support to NetTest

If a NetTestCase has multiple test_ methods, then the report write shall
not occur until all of the individual Measurements have completed.

This also changes the postProcessor API slightly; postProcessors are now
expected to return a report instance. If a postProcessor is not
supplied, then the report object from the instanced NetTestCase class is
passed to Report.write()
Fix ambiguity in what a ReportEntryTask does

ReportEntryTask can be passed dicts, Measurements, or Failures
Make the director pass Measurements to the report

Simply passing a failure instance does not provide any contextual
information, such as the input that was used, or headers. Instead, we
should always write the report object, even in case of failure, and
NetTests should try to add useful information to the report in their
errbacks.
Check to see if setUp was already called correctly

The report dict is already created in the constructor, so we look to see
if instead the input argument was already set.
Check to see if setUp was already called correctly

The report dict is already created in the constructor, so we look to see
if instead the input argument was already set.
Rewrite http_requests to use postProcessor API

Both the control and experiment tests can be rescheduled independently
if we use the postProcessor API.
Merge branch 'feature/support_postprocessor_api' into devel

Conflicts:
	ooni/tasks.py
Merge branch 'feature/use_postprocessor_with_http_requests' into devel

Conflicts:
	ooni/nettests/blocking/http_requests.py
Use inlineCallbacks

For some reason, using inlineCallbacks seems to produce a proper result
from the doRequest method -- however, in the previous code the returned
deferred had been called but the result was not set.