Update API schema to allow non-ASCII HTTP responses to be cached.
Update API schema to allow non-ASCII HTTP responses to be cached.

Previously, if `rbt` was used to fetch a a response that was not
encoded with ASCII, writing to the SQLite database would cause it to
crash due to trying to insert binary data into a text field. The API
cache now stores the response body as a binary blob. The caching layer
no longer has to worry about the encoding or data type of the data
being cached.

Because of the schema change, update API Cache schema to version 2.

Use unicode literals in api/cache.py.

Testing Done:
Unit tests passed.

Posted and updated this review request with the patch.

Caching an HTTP response that is not ASCII encoded no longer causes
`rbt` to crash.

Reviewed at https://reviews.reviewboard.org/r/6735/

haosdent/rbtools,halvorlu/rbtools,beol/rbtools,haosdent/rbtools,reviewboard/rbtools,davidt/rbtools,datjwu/rbtools,halvorlu/rbtools,halvorlu/rbtools,reviewboard/rbtools,datjwu/rbtools,davidt/rbtools,datjwu/rbtools,beol/rbtools,haosdent/rbtools,davidt/rbtools,reviewboard/rbtools,beol/rbtools