Configure settings sooner in makemessages

As get_text_list is using translations, setup settings before
calling it.
Fixed #21415 -- Replaced escape sequence by literal non-breaking space

Unfortunately, escape sequences (\x.. or \u....) do not fit well
with the gettext toolchain. Falling back to using literal char,
even if visibility is not ideal.
Fixed #21440 -- Typo #2 in topics/http/shortcuts.txt

Thanks alasdair.
Fixed #21447 -- Restored code erroneously removed in 20472aa827669d2b83b74e521504e88e18d086a1.

Also added some tests for HttpRequest.__repr__.
Note that the added tests don't actually catch the accidental code
removal (see ticket) but they do cover a codepath that wasn't tested
before.

Thanks to Tom Christie for the report and the original patch.
Moved import at proper place in contrib.sites
Fixed #21428 -- editable GenericRelation regression

The GenericRelation refactoring removed GenericRelations from
model._meta.many_to_many. This had the side effect of disallowing
editable GenericRelations in ModelForms. Editable GenericRelations
aren't officially supported, but if we don't fix this we don't offer any
upgrade path for those who used the ability to set editable=True
in GenericRelation subclass.

Thanks to Trac alias joshcartme for the report and stephencmd and Loic
for working on this issue.
Fixed a regression caused by fix for #21428

On Python 3 sorting Fields mixed with GenericForeignKeys doesn't work
as GenericForeignKey isn't a subclass of django.db.models.fields.Field.

Refs #21428.
Updated 1.6.1 release notes

Partial forward port of e85baa813f.
Optimise admin images
Merge pull request #1931 from funkybob/admin-image-opt

Fixes #21455 - Optimise admin images

Every bit is sacred
Every bit is great
If a bit is wasted
God gets quite irate
Fixed #21404 -- Added session.set_expiry() note to 1.6 release notes.

Thanks pwr for the suggestion.
Fixed #21240 -- Added 1.5 release note for OneToOneField/select_related change.

Thanks marcin at sokrates.pl.
Added release note for TypedChoiceField coerce limitation

Thanks Elec for the report and Simon Charette for the review.
Refs #21397.
Fixed #21397 -- Re-added flexibility to TypedChoiceField coercion

Thanks Elec for the report and Simon Charette for the review.
Merged the signals and signals_regress test packages.

This patch also made the tests less likely to pollute the global state
in case of failure.
Added more internal links in the management command documentation.
Fixed #21457 -- Allowed fixture file name to contain dots

Thanks Keryn Knight for the report.
Fixed some Signal.disconnect calls from 058e434.

This would go unnoticed by the test suite because receivers are removed
automatically when they are garbage collected.

Changed all Signal.connect calls to hold strong references to ensure we
clean up after ourselves.
Fixed typo in topics/http/sessions.txt.
Fixed #15179 -- middlewares not applied for test client login()

Requests made with django.test.Client.login() and logout() respect
defaults defined in django.test.Client instantiation and are processed
through middleware.

Thanks to Loic for the reviews.