Fixed #16905 -- Added extensible checks (nee validation) framework

This is the result of Christopher Medrela's 2013 Summer of Code project.

Thanks also to Preston Holmes, Tim Graham, Anssi Kääriäinen, Florian
Apolloner, and Alex Gaynor for review notes along the way.

Also: Fixes #8579, fixes #3055, fixes #19844.
Fixed a small collection of flake8 violations that had snuck in
Removed an inactive system check for upload_to.

Thanks to Simon Charette for the eagle eyes.
Corrected minor typo.

Thanks to @cjerdonek for the report.
Fixed multi geometries editing in OpenLayers widget
Fixed Oracle in lookup when more than 1000 params

Refs #21821.
Fixed regex lookup on Oracle

Refs #21821
Use date_extract_sql() for DateFields

Refs #21821
Fixed custom_lookups tests for Oracle

Refs #21821
Fixed two test failures under Oracle
Fixed a couple of deprecation warnings
Corrected documentation typo.

Thanks to @cjerdonek for the report.
Added warning silencers to some noisy tests.

These warnings all emerged as the result of the introduction of the checks framework.

Thanks to Anssi Kääriäinen for the report.
Added a missing command to the command line examples for check.

Thanks to Bruno Renie for the report.
Removed a stray new line which upset flake8
Added ManifestStaticFilesStorage to staticfiles contrib app.

It uses a static manifest file that is created when running
collectstatic in the JSON format.
Refs #21831 -- Softened the TestClient dependency on contrib.auth.

This is to prevent an import of django.test causing an import (and thus
an implicit checks regisration) for an app that may not be in
`INSTALLED_APPS`.

Better fixes may be possible when #20915 and/or #21829 are addressed.

Thanks to @carljm for the report.