Give more control to user

This PR gives more control to the user in two ways:

1. It allows the user to access the body of the HTTP response from the HTTP response object without having to specify the 'Response' parameter in the Opts structure. This will make it easier for Gophercloud functions to not be tied to this library.

2. It allows the user to handle the HTTP response codes. Currently, if there are no acceptable response codes specified in the Opts structure, the library defaults to only succeeding for a 200 response code. However, it is likely that different users will find different response codes acceptable. For example, one user may consider a 202 response (Accepted for processing) acceptable while another may not. 

Tests are passing for me.

Closes #17.