Fixed very tricky bug with duplicite failures.
For some types of error (e.g. ConnectionLost) twisted returns the
same Failure object everytime. Thus when we create `failure.request` field,
it is rewritten and makes some requests got lost and others are duplicite.