do not close response until buildError finishes

`s3_test#TestGetNotFound` failed because it's trying to decode hresp.Body, but
the body's already closed. This patch defers `hresp.Body.Close()` until it
finishes building the error.
Merge pull request #37 from nitrous-io/fix-get-not-found-test

do not close response until buildError finishes
add bucket.GetKey to get metadata of a key