[1.6.x] Fixed #16433 -- Fixed a help_text/read only field interaction that caused an admin crash.

Thanks chris at cogdon.org for the report and admackin for the patch.

Backport of af953c45cc from master
[1.6.x] Fixed #14786 -- Fixed get_db_prep_lookup calling get_prep_value twice if prepared is False.

Thanks homm for the report and Aramgutang and lrekucki for work on
the patch.

Backport of f19a3669b8 from master
[1.6.x] Added links to file docs.

Backport of d72f83c410 from master
[1.6.x] Removed stale add_q() comment

Backport of 13be3bfef1 from master
[1.6.x] Fixed #20988 -- Added model meta option select_on_save

The option can be used to force pre 1.6 style SELECT on save behaviour.
This is needed in case the database returns zero updated rows even if
there is a matching row in the DB. One such case is PostgreSQL update
trigger that returns NULL.

Reviewed by Tim Graham.

Refs #16649

Backport of e973ee6a9879969b8ae05bb7ff681172cc5386a5 from master

Conflicts:
	django/db/models/options.py
	tests/basic/tests.py
[1.6.x] Set 'bidi' Urdu property to True

Refs #20454.
Backport of e4a67fd90 from master.
[1.6.x] Fixed #20999 - Allow overriding formfield class with choices, without subclass restrictions.

Refs #18162. Thanks claudep and mjtamlyn for review.

Backport of 7211741fc5d50425 from master.
[1.6.x] Fixed typo in docs/ref/models/options.txt

Backport of a89c856a7a from master
[1.6.x] Fixed copy/paste error in measurement docs

Backport of e87997dd33 frmo master.
[1.6.x] Made the doc about translating string literals in templates more prominent.

Backport of 9885f07757 from master
[1.6.x] Fixed #20998 -- Allow custom (de)serialization for GIS widgets

Thanks Mathieu Leplatre for the report and the initial patch.
Backport of 102f26c92 from master.
[1.6.x] Fixed gis test to run on non gis-enabled settings

Refs #20998.
Backport of 973502c0 from master.
[1.6.x] Fixed syntax error in OSMWidget

Backport of 6ecbac21a from master.
[1.6.x] Prevented rendering attrs to be squashed in OSMWidget

Backport of b6889c68d7 from master.
[1.6.x] Fixed #21002 -- Documented JSON session serialization requires string keys

Thanks jeroen.pulles at redslider.net for the report.

Backport of 3baf1d1042 from master
[1.6.x] Isolated map creation JS code

Backport of 3550b27a8 from master.
[1.6.x] Fixed #21003 -- Ensured geometry widget return value has SRID

Thanks Mathieu Leplatre for the report and initial patch.
Backport of dd656073ad from master.
[1.6.x] Updated the bundled version of six to 1.4.0.

Backport of 42920970 from master.
[1.6.x] Replaced "not PY3" by "PY2", new in six 1.4.0.

Conflicts:
	django/db/backends/oracle/base.py
	django/db/backends/sqlite3/base.py
	django/db/models/base.py

Backport of 365c3e8b from master.
Used six.moves.zip_longest, new in six 1.4.0.