Improve migration optimizer to be able to optimize through other ops
First pass on squashmigrations command; files are right, execution not.
Fixed #7551 -- Made GFK allow None init argument.

Thanks SamBull for the report.
Avoided hardcoding Permission.name max_length

refs #18866.
Fixed #19657 -- Made sql commands honor allow_migrate

Thanks Manel Clos for the report and the initial patch, and
Marc Tamlyn and Tim Graham for the review.
Add get_migratable_models util method to ConnectionRouter
Fixed #21270 -- Fixed E701 pep8 warnings
Merge pull request #1762 from alasdairnicol/ticket_21270

Fixed #21270 -- Fixed E701 pep8 warnings
Removed some dead code and simplified some other ocde
Fixed #21280 -- Don't generate empty migration files
Remove some unnecesary uses of bool
Fixed #18659 -- Deprecated request.REQUEST and MergeDict

Thanks Aymeric Augustin for the suggestion.
Removed F.__deepcopy__()

The method didn't change standard __deepcopy__ in any way.
Added test for a921f06 - refs #21280.

This commit also lays the groundwork for future tests for the
makemigrations command.
Fixed #21282 -- Made HttpResponse.serialize_headers accept latin-1

Thanks Raphaël Barrois for the report and the initial patch and
Aymeric Augustin for the review.
Fixed #21284 -- Prevented KeyError swallowing in fetch_command

Thanks wildfire for the report.
Removed importing formtools tests in __init__.py

Unnecessary since introduction of DiscoveryTestRunner in 9012833af8.
Fixed #21259 -- Fixed formstools wizard for InlineFormSet.
Removed 1.6 release note text regarding password limit length.

This changed was reverted in 5d74853e156105ea02a41f4731346dbe272c2412.
Fixed #21285 -- Fixed E121,E122 pep8 warnings