Silenced a spurious warning.

Thanks Timo for the report. Regression from 2f65b8e1. Refs #21794.
Suppressed the `if Site._meta.installed` pattern.

The purpose of this construct is to test if the django.contrib.sites
application is installed. But in Django 1.9 it will be forbidden to
import the Site model when the django.contrib.sites application isn't
installed.

No model besides Site used this pattern.

Refs #21719, #21923.
Avoided importing models from django.contrib.admin.

Fixed #21923. Refs #21719.
Fixed typo.
Added a note about a possible name clash.

Thanks Russell for the advice.
Made SQLCompiler.execute_sql(result_type) more explicit.

Updated SQLUpdateCompiler.execute_sql to match the behavior described in
the docstring; the 'first non-empty query' will now include all queries,
not just the main and first related update.

Added CURSOR and NO_RESULTS result_type constants to make the usages more
self documenting and allow execute_sql to explicitly close the cursor when
it is no longer needed.
Ensure cursors are closed when no longer needed.

This commit touchs various parts of the code base and test framework. Any
found usage of opening a cursor for the sake of initializing a connection
has been replaced with 'ensure_connection()'.
Merge pull request #2154 from manfre/close-cursors

Fixed #21751 -- Explicitly closed cursors.
Fixed #21930 -- Only import add_srs_entry if GDAL is installed

Fixed regression introduced by fabc678f93. Thanks Michael Manfre
for the report.
Used the proxied call to staticfiles_storage.url
Removed an unused import which snuck in.
Fix regress added to migrations.test_operations.test_alter_field_pk_fk
Merge pull request #2230 from manfre/patch-2

Fix regress added to migrations.test_operations.test_alter_field_pk_fk
Make mysql's CursorWrapper a contextmanager.
Fixed typo in 3ffeb931.
Reordered deprecation timeline and added back old info; refs #21920.
Fixed #21934 -- Added unicode support in GoogleMap class
Moved a GoogleMap test
Made some PEP8 fixes in docs/ref/forms/widgets.txt

Thanks Siecje.
Fixed #21748 -- join promotion for negated AND conditions

Made sure Django treats case .filter(NOT (a AND b)) the same way as
.filter((NOT a OR NOT b)) for join promotion.