The server test passes again.
diff --git a/openstack/compute/v2/images/images_test.go b/openstack/compute/v2/images/images_test.go
index ee3b79e..76ffbec 100644
--- a/openstack/compute/v2/images/images_test.go
+++ b/openstack/compute/v2/images/images_test.go
@@ -8,7 +8,7 @@
 const (
 	// This example was taken from: http://docs.openstack.org/api/openstack-compute/2/content/Rebuild_Server-d1e3538.html
 
-	simpleImageJson = `{
+	simpleImageJSON = `{
 		"id": "52415800-8b69-11e0-9b19-734f6f006e54",
 		"name": "CentOS 5.2",
 		"links": [{
@@ -21,14 +21,14 @@
 	}`
 )
 
-func TestGetImage(t *testing.T) {
+func TestExtractImage(t *testing.T) {
 	var simpleImageMap map[string]interface{}
-	err := json.Unmarshal([]byte(simpleImageJson), &simpleImageMap)
+	err := json.Unmarshal([]byte(simpleImageJSON), &simpleImageMap)
 	if err != nil {
 		t.Fatal(err)
 	}
 
-	image, err := GetImage(simpleImageMap)
+	image, err := ExtractImage(simpleImageMap)
 	if err != nil {
 		t.Fatal(err)
 	}
diff --git a/openstack/compute/v2/servers/servers.go b/openstack/compute/v2/servers/servers.go
index e2352ce..fd11d4c 100644
--- a/openstack/compute/v2/servers/servers.go
+++ b/openstack/compute/v2/servers/servers.go
@@ -65,9 +65,12 @@
 // ExtractServers interprets the results of a single page from a List() call, producing a slice of Server entities.
 func ExtractServers(page pagination.Page) ([]Server, error) {
 	casted := page.(ListPage).Body
-	var servers []Server
-	err := mapstructure.Decode(servers, casted)
-	return servers, err
+
+	var response struct {
+		Servers []Server `mapstructure:"servers"`
+	}
+	err := mapstructure.Decode(casted, &response)
+	return response.Servers, err
 }
 
 // ExtractServer interprets the result of a call expected to return data on a single server.
diff --git a/openstack/compute/v2/servers/servers_test.go b/openstack/compute/v2/servers/servers_test.go
index b4a094c..106d9b5 100644
--- a/openstack/compute/v2/servers/servers_test.go
+++ b/openstack/compute/v2/servers/servers_test.go
@@ -6,183 +6,182 @@
 )
 
 // Taken from: http://docs.openstack.org/api/openstack-compute/2/content/List_Servers-d1e2078.html
-const goodListServersResult = `{
-"servers": [
+const goodListServersResult = `
 {
-"id": "52415800-8b69-11e0-9b19-734f6af67565",
-"tenant_id": "1234",
-"user_id": "5678",
-"name": "sample-server",
-"updated": "2010-10-10T12:00:00Z",
-"created": "2010-08-10T12:00:00Z",
-"hostId": "e4d909c290d0fb1ca068ffaddf22cbd0",
-"status": "BUILD",
-"progress": 60,
-"accessIPv4" : "67.23.10.132",
-"accessIPv6" : "::babe:67.23.10.132",
-"image" : {
-"id": "52415800-8b69-11e0-9b19-734f6f006e54",
-"links": [
-{
-"rel": "self",
-"href": "http://servers.api.openstack.org/v2/1234/images/52415800-8b69-11e0-9b19-734f6f006e54"
-},
-{
-"rel": "bookmark",
-"href": "http://servers.api.openstack.org/1234/images/52415800-8b69-11e0-9b19-734f6f006e54"
+	"servers": [
+		{
+			"id": "52415800-8b69-11e0-9b19-734f6af67565",
+			"tenant_id": "1234",
+			"user_id": "5678",
+			"name": "sample-server",
+			"updated": "2010-10-10T12:00:00Z",
+			"created": "2010-08-10T12:00:00Z",
+			"hostId": "e4d909c290d0fb1ca068ffaddf22cbd0",
+			"status": "BUILD",
+			"progress": 60,
+			"accessIPv4": "67.23.10.132",
+			"accessIPv6": "::babe:67.23.10.132",
+			"image": {
+				"id": "52415800-8b69-11e0-9b19-734f6f006e54",
+				"links": [
+					{
+						"rel": "self",
+						"href": "http://servers.api.openstack.org/v2/1234/images/52415800-8b69-11e0-9b19-734f6f006e54"
+					},
+					{
+						"rel": "bookmark",
+						"href": "http://servers.api.openstack.org/1234/images/52415800-8b69-11e0-9b19-734f6f006e54"
+					}
+				]
+			},
+			"flavor": {
+				"id": "52415800-8b69-11e0-9b19-734f216543fd",
+				"links": [
+					{
+						"rel": "self",
+						"href": "http://servers.api.openstack.org/v2/1234/flavors/52415800-8b69-11e0-9b19-734f216543fd"
+					},
+					{
+						"rel": "bookmark",
+						"href": "http://servers.api.openstack.org/1234/flavors/52415800-8b69-11e0-9b19-734f216543fd"
+					}
+				]
+			},
+			"addresses": {
+				"public": [
+					{
+						"version": 4,
+						"addr": "67.23.10.132"
+					},
+					{
+						"version": 6,
+						"addr": "::babe:67.23.10.132"
+					},
+					{
+						"version": 4,
+						"addr": "67.23.10.131"
+					},
+					{
+						"version": 6,
+						"addr": "::babe:4317:0A83"
+					}
+				],
+				"private": [
+					{
+						"version": 4,
+						"addr": "10.176.42.16"
+					},
+					{
+						"version": 6,
+						"addr": "::babe:10.176.42.16"
+					}
+				]
+			},
+			"metadata": {
+				"Server Label": "Web Head 1",
+				"Image Version": "2.1"
+			},
+			"links": [
+				{
+					"rel": "self",
+					"href": "http://servers.api.openstack.org/v2/1234/servers/52415800-8b69-11e0-9b19-734f6af67565"
+				},
+				{
+					"rel": "bookmark",
+					"href": "http://servers.api.openstack.org/1234/servers/52415800-8b69-11e0-9b19-734f6af67565"
+				}
+			]
+		},
+		{
+			"id": "52415800-8b69-11e0-9b19-734f1f1350e5",
+			"user_id": "5678",
+			"name": "sample-server2",
+			"tenant_id": "1234",
+			"updated": "2010-10-10T12:00:00Z",
+			"created": "2010-08-10T12:00:00Z",
+			"hostId": "9e107d9d372bb6826bd81d3542a419d6",
+			"status": "ACTIVE",
+			"accessIPv4": "67.23.10.133",
+			"accessIPv6": "::babe:67.23.10.133",
+			"image": {
+				"id": "52415800-8b69-11e0-9b19-734f5736d2a2",
+				"links": [
+					{
+						"rel": "self",
+						"href": "http://servers.api.openstack.org/v2/1234/images/52415800-8b69-11e0-9b19-734f5736d2a2"
+					},
+					{
+						"rel": "bookmark",
+						"href": "http://servers.api.openstack.org/1234/images/52415800-8b69-11e0-9b19-734f5736d2a2"
+					}
+				]
+			},
+			"flavor": {
+				"id": "52415800-8b69-11e0-9b19-734f216543fd",
+				"links": [
+					{
+						"rel": "self",
+						"href": "http://servers.api.openstack.org/v2/1234/flavors/52415800-8b69-11e0-9b19-734f216543fd"
+					},
+					{
+						"rel": "bookmark",
+						"href": "http://servers.api.openstack.org/1234/flavors/52415800-8b69-11e0-9b19-734f216543fd"
+					}
+				]
+			},
+			"addresses": {
+				"public": [
+					{
+						"version": 4,
+						"addr": "67.23.10.133"
+					},
+					{
+						"version": 6,
+						"addr": "::babe:67.23.10.133"
+					}
+				],
+				"private": [
+					{
+						"version": 4,
+						"addr": "10.176.42.17"
+					},
+					{
+						"version": 6,
+						"addr": "::babe:10.176.42.17"
+					}
+				]
+			},
+			"metadata": {
+				"Server Label": "DB 1"
+			},
+			"links": [
+				{
+					"rel": "self",
+					"href": "http://servers.api.openstack.org/v2/1234/servers/52415800-8b69-11e0-9b19-734f1f1350e5"
+				},
+				{
+					"rel": "bookmark",
+					"href": "http://servers.api.openstack.org/1234/servers/52415800-8b69-11e0-9b19-734f1f1350e5"
+				}
+			]
+		}
+	]
 }
-]
-},
-"flavor" : {
-"id": "52415800-8b69-11e0-9b19-734f216543fd",
-"links": [
-{
-"rel": "self",
-"href": "http://servers.api.openstack.org/v2/1234/flavors/52415800-8b69-11e0-9b19-734f216543fd"
-},
-{
-"rel": "bookmark",
-"href": "http://servers.api.openstack.org/1234/flavors/52415800-8b69-11e0-9b19-734f216543fd"
-}
-]
-},
-"addresses": {
-"public" : [
-{
-"version": 4,
-"addr": "67.23.10.132"
-},
-{
-"version": 6,
-"addr": "::babe:67.23.10.132"
-},
-{
-"version": 4,
-"addr": "67.23.10.131"
-},
-{
-"version": 6,
-"addr": "::babe:4317:0A83"
-}
-],
-"private" : [
-{
-"version": 4,
-"addr": "10.176.42.16"
-},
-{
-"version": 6,
-"addr": "::babe:10.176.42.16"
-}
-]
-},
-"metadata": {
-"Server Label": "Web Head 1",
-"Image Version": "2.1"
-},
-"links": [
-{
-"rel": "self",
-"href": "http://servers.api.openstack.org/v2/1234/servers/52415800-8b69-11e0-9b19-734f6af67565"
-},
-{
-"rel": "bookmark",
-"href": "http://servers.api.openstack.org/1234/servers/52415800-8b69-11e0-9b19-734f6af67565"
-}
-]
-},
-{
-"id": "52415800-8b69-11e0-9b19-734f1f1350e5",
-"user_id": "5678",
-"name": "sample-server2",
-"tenant_id": "1234",
-"updated": "2010-10-10T12:00:00Z",
-"created": "2010-08-10T12:00:00Z",
-"hostId": "9e107d9d372bb6826bd81d3542a419d6",
-"status": "ACTIVE",
-"accessIPv4" : "67.23.10.133",
-"accessIPv6" : "::babe:67.23.10.133",
-"image" : {
-"id": "52415800-8b69-11e0-9b19-734f5736d2a2",
-"links": [
-{
-"rel": "self",
-"href": "http://servers.api.openstack.org/v2/1234/images/52415800-8b69-11e0-9b19-734f5736d2a2"
-},
-{
-"rel": "bookmark",
-"href": "http://servers.api.openstack.org/1234/images/52415800-8b69-11e0-9b19-734f5736d2a2"
-}
-]
-},
-"flavor" : {
-"id": "52415800-8b69-11e0-9b19-734f216543fd",
-"links": [
-{
-"rel": "self",
-"href": "http://servers.api.openstack.org/v2/1234/flavors/52415800-8b69-11e0-9b19-734f216543fd"
-},
-{
-"rel": "bookmark",
-"href": "http://servers.api.openstack.org/1234/flavors/52415800-8b69-11e0-9b19-734f216543fd"
-}
-]
-},
-"addresses": {
-"public" : [
-{
-"version": 4,
-"addr": "67.23.10.133"
-},
-{
-"version": 6,
-"addr": "::babe:67.23.10.133"
-}
-],
-"private" : [
-{
-"version": 4,
-"addr": "10.176.42.17"
-},
-{
-"version": 6,
-"addr": "::babe:10.176.42.17"
-}
-]
-},
-"metadata": {
-"Server Label": "DB 1"
-},
-"links": [
-{
-"rel": "self",
-"href": "http://servers.api.openstack.org/v2/1234/servers/52415800-8b69-11e0-9b19-734f1f1350e5"
-},
-{
-"rel": "bookmark",
-"href": "http://servers.api.openstack.org/1234/servers/52415800-8b69-11e0-9b19-734f1f1350e5"
-}
-]
-}
-]
-}`
+`
 
-func TestGetServer(t *testing.T) {
-	var listResults map[string]interface{}
-	err := json.Unmarshal([]byte(goodListServersResult), &listResults)
+func TestExtractServers(t *testing.T) {
+	var listPage ListPage
+	err := json.Unmarshal([]byte(goodListServersResult), &listPage.MarkerPageBase.LastHTTPResponse.Body)
 	if err != nil {
-		t.Error(err)
-		return
+		t.Fatalf("Error decoding JSON fixture: %v", err)
 	}
 
-	svrs, err := GetServers(listResults)
+	svrs, err := ExtractServers(listPage)
 	if err != nil {
-		t.Error(err)
-		return
+		t.Fatalf("Error extracting servers: %v", err)
 	}
 
 	if len(svrs) != 2 {
-		t.Errorf("Expected 2 servers; got %d", len(svrs))
-		return
+		t.Fatalf("Expected 2 servers; got %d", len(svrs))
 	}
 }