more error types; RequestOptsBuilder error fixes
diff --git a/openstack/objectstorage/v1/objects/requests.go b/openstack/objectstorage/v1/objects/requests.go
index a2c1f85..9a6da58 100644
--- a/openstack/objectstorage/v1/objects/requests.go
+++ b/openstack/objectstorage/v1/objects/requests.go
@@ -133,7 +133,7 @@
 		url += query
 	}
 
-	resp, err := c.Request("GET", url, gophercloud.RequestOpts{
+	resp, err := c.Request("GET", url, &gophercloud.RequestOpts{
 		MoreHeaders: h,
 		OkCodes:     []int{200, 304},
 	})
@@ -226,7 +226,7 @@
 		return res
 	}
 
-	ropts := gophercloud.RequestOpts{
+	ropts := &gophercloud.RequestOpts{
 		RawBody:     content,
 		MoreHeaders: h,
 	}
@@ -295,7 +295,7 @@
 	}
 
 	url := copyURL(c, containerName, objectName)
-	resp, err := c.Request("COPY", url, gophercloud.RequestOpts{
+	resp, err := c.Request("COPY", url, &gophercloud.RequestOpts{
 		MoreHeaders: h,
 		OkCodes:     []int{201},
 	})
@@ -384,7 +384,7 @@
 		url += query
 	}
 
-	resp, err := c.Request("HEAD", url, gophercloud.RequestOpts{
+	resp, err := c.Request("HEAD", url, &gophercloud.RequestOpts{
 		OkCodes: []int{200, 204},
 	})
 	if resp != nil {
@@ -442,7 +442,7 @@
 	}
 
 	url := updateURL(c, containerName, objectName)
-	resp, err := c.Request("POST", url, gophercloud.RequestOpts{
+	resp, err := c.Request("POST", url, &gophercloud.RequestOpts{
 		MoreHeaders: h,
 	})
 	if resp != nil {