Fixed #21473 -- Limited language preservation to logout

Current language is no longer saved to session by LocaleMiddleware
on  every response (the behavior introduced in #14825).
Instead language stored in session is reintroduced into new session
after logout.

Forward port of c558a43fd6 to master.
Fixed #21591 -- Added documentation about contrib.messages.get_messages.

Refs https://code.djangoproject.com/ticket/21591
Thanks to track user merb for the report.
Improved translation maintenance script

Do not fetch 'en' catalogs, neither files with translation stats
lower than 5%. Centralized resource filtering.
Moving notes for assertNumQueries next to the other changes to test infrastructure
Fixed PEP257 violations (single-quoted docstrings) in utils.text.
Fixed #21574 -- Handle bytes consistently in utils.text.normalize_newlines.

All input is now coerced to text before being normalized.
This changes nothing under Python 2 but it allows bytes
to be passed to the function without a TypeError under Python3
(bytes are assumed to be utf-8 encoded text).

Thanks to trac user vajrasky for the report.
Copied 1.6.1 release notes from stable/1.6.x branch.
Changed documentation of HttpResponse.content to indicate it's a bytestring
Merge pull request #2067 from dominicrodger/master

Moving notes for assertNumQueries next to the other changes to test infrastructure
Added 1.6.2 release notes stub.
Fixed #21580 -- Clarified why render() does not return a TemplateResponse object.
Fixed #21606 -- Fixed default_lat and default_lon override in OSMWidget
Allowed running GIS form tests that don't require spatial database
Fixed link text for "Testing in Django" in tutorial 5.
Removed usage of to-be-deprecated ADMIN_FOR setting in contributing docs
Fixed #21614 -- improved docs on configuring email for development.
Fixed E127 pep8 warnings.
Clarifed table rewrites in migration docs.

Small nitpicks. All column-related ALTER TABLE commands take an
exclusive table lock in PostgreSQL. The difference is that adding a
column without default doesn't cause a table rewrite, so the lock is
held only for a short time.

The time taken is more accurately proportional to table size, not row
count.
Fixed #21250 -- Made HTTP auth user header configurable in tests

Currently, if the authentication mechanism uses a custom HTTP header
and not REMOTE_USER, it is not easy to test. This commit modifies
remote user tests in order to make them more generic.
Revert "Allowed running GIS form tests that don't require spatial database"

This reverts commit 07fe0bf3f4a49a734f83f5ea30130449dacf9660.
This was not working properly on system without geos library
installed.