Passing response object to callback

This PR contains next features:

 * Passing response object to callback - which allows user to read headers (useful with `method: 'head'` option)
 * Passing options on redirect - this preserves `method: 'head'` option, when getting `google.com`