deferred ManyToManyField assignment
> Is this normal?

Oke I've read [peewee.py#L4194](https://github.com/coleifer/peewee/blob/master/peewee.py#L4194). and I've understood that Fields are replaced on class creation, so you cannot deferred Model fields definition. In some cases you can you can use model proxies as workaround.

Am I wrong?
 You should just need to call `add_to_class()`. Untested, but:

``` python
users_field = ManyToManyField(User, related_name='groups')
users_field.add_to_class(Group, 'users')
```
 Given it is 2023, and API have changed, now we (as far as I get) should use:
```
users_field = ManyToManyField(User, backref='groups')
Group._meta.add_field('users', users_field)
```
If the `ManyToManyField` assignment is made after class declaration you will encounter errors.
The following code represent the scenario.

``` python
from peewee import PrimaryKeyField, CharField,\
    Model, SqliteDatabase
from playhouse.fields import ManyToManyField


db = SqliteDatabase(':memory:')


class BaseModel(Model):
    class Meta:
        database = db  # Use proxy for our DB.


class User(BaseModel):
    id = PrimaryKeyField()
    name = CharField(unique=True)


class Group(BaseModel):
    id = PrimaryKeyField()
    name = CharField(unique=True)


Group.users = ManyToManyField(User, related_name='groups')
UserToGroup = Group.users.get_through_model()


def main():
    db.connect()
    db.create_tables([User,
                      Group,
                      UserToGroup])

    anons = Group.create(name='anons')
    jhondohe = User.create(name='jhondhoe')
    anons.users.add(jhondohe)
    anons.save()
    print [u.name for u in anons.users]
    print [g.name for g in jhondohe.groups]


if __name__ == '__main__':
    main()
```

Output:

``` python
  File "peewee_test.py", line 25, in <module>
    UserToGroup = Group.users.get_through_model()
  File "/home/anon/peewee_test/ve/local/lib/python2.7/site-packages/playhouse/fields.py", line 74, in get_through_model
    lhs, rhs = self.get_models()
  File "/home/anon/peewee_test/ve/local/lib/python2.7/site-packages/playhouse/fields.py", line 69, in get_models
    (self._is_backref, self.model_class),
AttributeError: 'ManyToManyField' object has no attribute 'model_class'
```

Is this normal?
