Fix ListServers to yield full details.

Also, provide ListServersLinksOnly() if you want to retain the older
behavior.  LinksOnly variant isn't terribly useful though, as it
provides virtually _no_ useful information other than the mere existence
of a server.

Fixes #45.
diff --git a/servers.go b/servers.go
index 30aa959..6cad056 100644
--- a/servers.go
+++ b/servers.go
@@ -23,7 +23,7 @@
 }
 
 // See the CloudServersProvider interface for details.
-func (gcp *genericServersProvider) ListServers() ([]Server, error) {
+func (gcp *genericServersProvider) ListServersLinksOnly() ([]Server, error) {
 	var ss []Server
 
 	url := gcp.endpoint + "/servers"
@@ -38,6 +38,23 @@
 }
 
 // See the CloudServersProvider interface for details.
+func (gcp *genericServersProvider) ListServers() ([]Server, error) {
+	var ss []Server
+
+	err := gcp.context.WithReauth(gcp.access, func() error {
+		url := gcp.endpoint + "/servers/detail"
+		return perigee.Get(url, perigee.Options{
+			CustomClient: gcp.context.httpClient,
+			Results:      &struct{ Servers *[]Server }{&ss},
+			MoreHeaders: map[string]string{
+				"X-Auth-Token": gcp.access.AuthToken(),
+			},
+		})
+	})
+	return ss, err
+}
+
+// See the CloudServersProvider interface for details.
 func (gsp *genericServersProvider) ServerById(id string) (*Server, error) {
 	var s *Server