Peewee crashes when applying distinct to an expression
Thanks, this is now fixed.
**Describe the bug**
When applying `distinct` to an expression peewee crashes with `TypeError`. Beyond a table's column, in postgres distinct gets an [arbitrary expression](https://www.postgresql.org/docs/9.5/sql-select.html)

**Expected behavior**
```python
expr = (Model.column_a + Model.column_b).alias('expr')
Model.select(expr).order_by(expr).distinct(expr.alias())
```

I expect the following query:

```sql
SELECT DISTINCT ON ("t1"."column_a" + "t1"."column_b") "t1"."column_a" + "t1"."column_b" AS "expr" FROM "model" AS "t1" ORDER BY "t1"."column_a" + "t1"."column_b";
```

Instead I get the following exception:

```
Traceback (most recent call last):
  File "program.py", line 22, in <module>
    print(Model.select(expr).order_by(expr).distinct(expr.alias()))
  File "/home/.env/lib/python3.8/site-packages/peewee-3.13.3-py3.8.egg/peewee.py", line 1885, in inner
    return method(self, database, *args, **kwargs)
  File "/home/.env/lib/python3.8/site-packages/peewee-3.13.3-py3.8.egg/peewee.py", line 2143, in first
    return self.peek(database, n=n)
  File "/home/.env/lib/python3.8/site-packages/peewee-3.13.3-py3.8.egg/peewee.py", line 1885, in inner
    return method(self, database, *args, **kwargs)
  File "/home/.env/lib/python3.8/site-packages/peewee-3.13.3-py3.8.egg/peewee.py", line 2134, in peek
    rows = self.execute(database)[:n]
  File "/home/.env/lib/python3.8/site-packages/peewee-3.13.3-py3.8.egg/peewee.py", line 1885, in inner
    return method(self, database, *args, **kwargs)
  File "/home/.env/lib/python3.8/site-packages/peewee-3.13.3-py3.8.egg/peewee.py", line 1956, in execute
    return self._execute(database)
  File "/home/.env/lib/python3.8/site-packages/peewee-3.13.3-py3.8.egg/peewee.py", line 2128, in _execute
    cursor = database.execute(self)
  File "/home/.env/lib/python3.8/site-packages/peewee-3.13.3-py3.8.egg/peewee.py", line 3118, in execute
    sql, params = ctx.sql(query).query()
  File "/home/.env/lib/python3.8/site-packages/peewee-3.13.3-py3.8.egg/peewee.py", line 606, in sql
    return obj.__sql__(self)
  File "/home/.env/lib/python3.8/site-packages/peewee-3.13.3-py3.8.egg/peewee.py", line 2383, in __sql__
    .sql(EnclosedNodeList(self._distinct))
  File "/home/.env/lib/python3.8/site-packages/peewee-3.13.3-py3.8.egg/peewee.py", line 1760, in EnclosedNodeList
    return NodeList(nodes, ', ', True)
  File "/home/.env/lib/python3.8/site-packages/peewee-3.13.3-py3.8.egg/peewee.py", line 1740, in __init__
    self.nodes[0] = self.nodes[0].clone()
TypeError: 'tuple' object does not support item assignment
```
I assume that there is a programing error because peewee tries to assign something to a tuple object, although tuples in Python are immutable
