Close http.Response.Body on err in Transport

Transport.RoundTrip returns a nil http.Response on errors
without first closing the Body. This violates the contract
with http.Response and can leave open sockets until the
process exits.
Merge pull request #5 from ryanbrainard/transport-close-bodies

Close http.Response.Body on err in Transport