Improved frozen User model on migrations

It should now be flexible enough for almost any custom user model.
We're still assuming that the primary key is an AutoField but that's an
assumption I can live with.