Fixed #23606 -- Implement the RequestFactory trace() method

The RequestFactory class did not implement a trace() method, and
therefore raised an AttributeError when used to create TRACE requests.

This change implements a factory method that returns a very basic TRACE
request object, which should be suitable for most test cases.

It also reworks the original TestClientTests suite so that the following
conditions are checked:

    - The test factory can create requests for all the HTTP/1.1 methods;
    - The GET request test is tested separately;
    - The TRACE request is tested with a test view that simulates the
      echo response, according to rfc2616.

This fixes https://code.djangoproject.com/ticket/23606
We don't use sphinx style (see [#19907](https://code.djangoproject.com/ticket/19907)) for docstrings. I think the parameters are simple enough that the don't need to be explained here like this. They are explained in topics/testing/tools.txt. Let's be consistent with the rest of the methods.