fix save to work for tenants with default value pk
fix save to work for tenants with default value pk

Updates the `is_new` flag in the `TenantMixin` save method to use `self._state.adding` ([see docs here](https://docs.djangoproject.com/en/3.2/ref/models/instances/#state)) instead of `pk is None`.  When a model defines a primary key with a default value, pk will not be None even it it's not saved yet.  For example:
```python
class Client(TenantMixin):
    id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
    # ... more fields
```
This tenant would set `self.pk` to `uuid.uuid4()`, which means the `self.pk is None` check would be `False` because `self.pk` is a UUID.
tomturner/django-tenants,tomturner/django-tenants,tomturner/django-tenants