Fixed #23071 -- Use last migration's name in dependency to other app

Changed the autodetector to lookup the name of the other app's last
migration in the graph and use that as dependency instead of using
__latest__.
Silenced test warning for deprecated IPAddressField.
Fixed #23094 -- Removed redundant argument in select_related() example.

Thanks thegeekofalltrades at gmail.com for the report.
Fixed #21707 -- Added helpful error message when using {{ block.super }} in base template.

Thanks mitar for the suggestion.
Fixed #23014 -- Infinite migration regression with unique/index_together.
Fixed #22849 -- Added Session.__str__()
Forward ported release notes for refs #23089.
Fixed #23088 -- Used `six` `range` type in `Paginator.page_range`.
Improved docs for GEOSGeometry.simplify()
Fixed #22827 -- clarified what each cache middleware does.

Thanks Keryn Knight for the report.
Merge pull request #2938 from dekkers/ticket_23071

Fixed #23071 -- Use last migration's name in dependency to other app
Mark initial_data as deprecated separately from syncdb. Refs #23077.
Fixed #23093: soft application detection for swapped models
Restore support for reading __latest__ for compatability
Fixed #23085: Better error message for PostGIS 1.5/bad custom fields
Fixed #23083 -- Fixed runserver reloading when deleting a file.

Thanks Collin Anderson for the report and hirokiky for the fix.
Fixed bad usage of rstrip() that caused test failure.

If the temporary file name contained a p or y as its last
characters, it would be stripped. refs #23083.
Fixed #23097 -- Switched to new octal format in docs
Added test for the #23070 problem
Fixed code to solve #23070 problem

Added a class to wrap callable in settings:
* Not to call in the debug page (#21345).
* Not to break the debug page if the callable forbidding to set attributes (#23070).

Thanks @bmispelon for giving me some advice.