CompositeKey in subquery not resolved
Given the following simple model with a composite PK:
```python
class DocumentTag(BaseModel):
    document = ForeignKeyField(Document, related_name = 'tags')
    tag = ForeignKeyField(Tag)

    class Meta:
        primary_key = CompositeKey('document', 'tag')
```

`DocumentTag.select()`  works as expected, yielding
```sql
SELECT "t1"."document_id", "t1"."tag_id" FROM "documenttag" AS t1
```

When I now want to use `DocumentTag` in a subquery, the CompositeKey is not resolved as one would expect (the query does not make sense, but works for illustration purposes):
`Document.select().where(DocumentTag.select() == 1)` now yields
```sql
SELECT "t1".*
FROM "document" AS t1 
WHERE ((SELECT ? FROM "documenttag" AS t2) = ?) 
[<peewee.CompositeKey object at 0x7f1c0465b438>, 1]
```

The same holds for other uses of subqueries, like joining with a subquery.