Fix broken interactions between HTTP response caches and redirects.

This fixes several specific problems:
 - HTTP header map didn't contain the status line (under the null key)
 - response code, message and version weren't set by caches
 - caches didn't work with redirects

This change also makes some significant cleanup to the Headers class.
We might be able to simplify this further by dropping the map, should
that prove efficient enough.

Change-Id: Ib79ec17bef5978b3234f68102114eee7d4b7cda2
http://b/3139211
http://b/3139211
5 files changed