Fixed #23376 -- Made documentation about required Storage methods
consistent.

The following methods **should** be implemented, but are not required:

 * Storage.delete()
 * Storage.exists()
 * Storage.listdir()
 * Storage.size()
 * Storage.url()

Updated documentation to reflect this fact and give a couple of examples
where some methods may not be implemented. Add a warning that not
implementing some methods will result in a partial (possibly broken)
interface.

Ticket: https://code.djangoproject.com/ticket/23376
Merge pull request #3459 from brwr/brwr/django-23376

Fixed #23376 -- Make documentation about required Storage methods consistent.
Moved CSRF docs out of contrib.
Fixed #18456 -- Added path escaping to HttpRequest.get_full_path().
Fixed #23420 - broken warning for unbound naive datetime objects

Fixed issue with warning message displayed for unbound naive datetime
objects when USE_TZ is True. Adds unit test that demonstrates the issue
(discoverable when using a custom lookup in MySQL).
Clarified custom lookups output_field documentation
Fixed #23620 -- Used more specific assertions in the Django test suite.
Fixed #18523 -- Added stream-like API to HttpResponse.

Added getvalue() to HttpResponse to return the content of the response,
along with a few other methods to partially match io.IOBase.

Thanks Claude Paroz for the suggestion and Nick Sanford for review.
Refactored URLValidator tests by moving URLs to text files.
Changed docstrings in admindocs/utils to comply to PEP 257
Fixed #5405 -- Added support for reStructured text in admindocs for model docstrings

Referred to PR #760 for help
@elvard wrote code to support it, but it needed to be modified, in order to merge
@gkmngrgn added tests that also needed to be modified

Squashed commits:
[39a9318] Made changes asked in review by MarkusH

- Renamed TestDocstrings to more apt name TestUtils
- Wrote tests for methods in utils
- Removed unused meta data for ModelDetailView