Do not use __builtin__ in python3

__builtin__ does not exist in Python 3, use
six.moves.builtins instead.

Change-Id: If7d2838b0b90ac2d82c4d62c6dfb3c011f937a0b
closes-bug: #1290234
When re-raising exceptions, use save_and_reraise

In some cases the exception context can be cleared,
resulting in None being attempted to be re-raised after
an exception handler is run.

Change-Id: I16811ba8f0bfaa15199a648748bbc7d7a6a500bc
Partial-Bug:#1281453
Do not set Location header on HTTP/OK (200) responses

Previously v1 API was setting 'Location' header on responses that
did not require it.  The is incompatible with RFC-2616 §14.30, and
causes some webstacks to convert the 200 response to 302 Found.
This had the consequence of forcing a redirect loop in glance
client.

This patch removes 3 superfluous 'Location' header additions in
the v1 image API.

Change-Id: Ic971ec356f80dff5a9e6f2f16d242a06341a142f
Closes-bug: 1299095
Signed-off-by: Dave Walker (Daviey) <email@daviey.com>
Merge "Do not set Location header on HTTP/OK (200) responses"
Merge "Do not use __builtin__ in python3"
Merge "When re-raising exceptions, use save_and_reraise"