Link TaskManagers by Least Available Slots

A LinkedTaskManager only has availableSlots if its child TaskManager
also has availableSlots. Children LinkedTaskManagers must notify the
parent LinkedTaskManager when a task is complete because the task
queue is event-driven.
Handle more failure types

* Make sure tests will still work properly even if Tor is not running.
Write the number of currently running tasks to a text file
Reschedule failures immediately

Reschedule failures immediately so they do not accrue at the end
of the task list and eat memory.
Track the number of failures, not the instances.

The number of failures on very large scans (1m hosts) results in
a large list. This commit tracks the number of failures instead
of the objects.
Merge branch 'fix/link_task_schedulers' of https://github.com/aagbsn/ooni-probe into fix/link_task_schedulers

* 'fix/link_task_schedulers' of https://github.com/aagbsn/ooni-probe:
  Track the number of failures, not the instances.
  Reschedule failures immediately
Merge branch 'master' into fix/link_task_schedulers

* master: (36 commits)
  Clean up error messages
  Handle more failure types
  Properly handle the case when we don't get a collector by asking a bouncer
  Track the number of failed reporters
  Fix report write failure bug
  Track the number of failures, not the instances.
  Reschedule failures immediately
  Link TaskManagers by Least Available Slots
  Add CouldNotFindTestCollector error
  Fix some issues with ooni.deck
  Simplify the bouncer API
  Use error-code 406 to indicate policy rejection
  Add support for looking up test helpers via a bouncer.
  Add component.json file to ng-upload
  Update LICENSE file
  Start outlining the classes for policy handling
  Only run unittests when there is something on port 8888
  Add a basic deck that includes inputs as URLs
  Fix bug that leads decks not being started properly
  Implement downloading of input files based on URL in deck file
  ...

Conflicts:
	ooni/templates/httpt.py
Fix unittests for managers.

failures is now an int and not a list