do we want `self.outputs` and `self.workers` to be the same list? I believe that's what's being done here.

e.g if we append something to self.outputs, it will also be appended to self.workers.

```python
In [2]: foo = bar = []

In [3]: foo.append('test')

In [4]: bar
Out[4]: ['test']

In [5]: foo
Out[5]: ['test']

```