Fixed #23446 -- Officially recommended mysqlclient as MySQL driver

Thanks Corey Farwell for the report and Tim Graham for the review.
Thanks also to Inada Naoki for creating and maintaining mysqlclient.
Fixed documentation of make_password kwargs.
Fixed #23699 -- Prevented flush from loading initial data for apps with migrations.
Forwardported release note for refs #23621.
Removed some commented code in the forms Media class.
Fixed #22879 -- Intercept errors coming from cursor.__next__()
Fixed #23717 -- Fixed makemessages crash when STATIC_ROOT=None
Fixed typo in MySQL backend doctring

Thanks CHI Cheng for the report.
Fixed typo in squashing migrations documentation
Fixed #23708 -- Corrected mod_wsgi docs reference to nonexistent comment in wsgi.py.

Thanks inglesp for the report.
Fixed QuerySet datetimes argument name in docs.
Fixed #23493 -- Added bilateral attribute to Transform
Fixed #23721 -- check_related_objects without calling __iter__

Refs #14334
Stopped stripping microseconds with MySQL backend

Refs #19716.
Fixed #19716 -- Added support for microseconds with MySQL 5.6.4 and up

Thanks erik@cederstrand.dk for the report and Tim Graham for the review.
Required MySQLdb >= 1.2.5 for fractional seconds support

On MySQLdb < 1.2.5, MySQLdb returns None when fetching datetime/time
values with fractional seconds.
See https://github.com/farcepest/MySQLdb1/issues/24
Fixed #23606 -- Implemented Client and RequestFactory trace() methods.

Thanks KevinEtienne for the suggestion.
Fixed flake8 warnings.
Fixed spelling errors in docs.
Limited lines to 119 characters in django/{contrib,db}.

Refs #23395.