Make redirects work with the async API.
Merge pull request #395 from square/jwilson_0102_async_redirects

Make redirects work with the async API.
Another round of header APIs cleanup.

This promotes Headers to a public API from the internal package.
It moves some of its methods to OkHeaders, which has been renamed
from SyntheticHeaders.

Making the Headers class public API makes it possible to remove
more exotic APIs from Request and Response like the APIs to track
headers by index rather than by name.
Merge pull request #394 from square/jwilson_0102_headers_apis

Another round of header APIs cleanup.
add read response header timeout case
Merge pull request #397 from lingmingyb/timeout_test

add read response header timeout case