Added tests for m2m queries with custom pk on the end models

It seems this case was fixed somewhere between 1.5.x and 1.6.x. I added
tests as I wasn't able to find any tests for these cases. Refs #21879
Made Oracle introspect boolean fields

Fixed failing test schema.tests.SchemaTests.test_add_field_temp_default_boolean
Refs #19884
Fix typo CRSF -> CSRF
Merge pull request #2224 from Ian-Foote/patch-1

Fix typo CRSF -> CSRF
Made Oracle introspect FloatFields correctly

Broke InspectDBTestCase.test_field_types in two:
- a test_number_field_types, which now passes on Oracle too
- a test_field_types, for all non-numeric fields, which is still expected to fail

Also made some pep8 fixes in the tests file. Refs #19884

Thanks Tim Graham for review.
Added new srs test and various cleaning
Fixed #21907 -- Fixed add_srs_entry for Spatialite >= 4

Thanks dfunckt for the report.
Updated some tests to use the check framework and silenced a PendingDeprecationWarning.
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