[1.7.x] Removed unnecessary code in ManyToManyField.deconstruct()

Backport of 44169a00c1fe7c130a8b9774e3b02ccce524a3eb from master.
[1.7.x] Added missing logic to TimeField.deconstruct().

If auto_now or auto_now_add was used then the serialized
field in the migration contained unnecessary `editable` and
`blank` arguments.

Backport of 74325339327e5b8a2480aee7f482bc71f73c71f9 from master.
[1.7.x] Fixed #23156 -- Added missing BinaryField.deconstruct() method.

Backport of 72f1eb48df335c110f39d56f7978d95896a56bb8 from master.
[1.7.x] Ensured that Paginator.page_range works the same on Python 2 and 3.

This somewhat fixes #23088, refs 23140.

Backport of 2d542bf60cc37c59872c5a20d6af3bf826038739 from master.
[1.7.x] Fixed #23160 -- Correctly rename models with self referential fields.

Thanks to whitews AT gmail for the report.

Backport of cbb29af1aa from master
[1.7.x] Fixed a MySQL test failure introduced by cbb29af1aa.

Seems like unlike other backends MySQL get_constraints fails when dealing
with a non-existing table. refs #23160.

Backport of 1b00738f73 from master