Major fix

- Back porting `client.response()` code block from `4.0` to fix a logic flaw which lets `404s` fall into a 'success' case