Refine the glide list output to show package origin

I decided I liked @tve's suggestion better than my first implementation,
so now glide list prints Location: gopath|vendored|missing|...

Addresses #91
diff --git a/cmd/tree.go b/cmd/tree.go
index ccde8f2..0a0297b 100644
--- a/cmd/tree.go
+++ b/cmd/tree.go
@@ -69,15 +69,8 @@
 	sort.Strings(sortable)
 
 	for _, k := range sortable {
-		dec := "yes"
-		if d, ok := direct[k]; ok && d.PType == ptypeUnknown {
-			dec = "no"
-		}
-		vendored := "no"
-		if d, ok := direct[k]; ok && d.PType == ptypeVendor {
-			vendored = "yes"
-		}
-		fmt.Printf("%s (Present: %s, Vendored: %s)\n", k, dec, vendored)
+		t := direct[k].PType
+		fmt.Printf("%s (Location: %s)\n", k, ptypeString(t))
 	}
 
 	return nil, nil
@@ -128,6 +121,23 @@
 	ptypeCgo
 )
 
+func ptypeString(t ptype) string {
+	switch t {
+	case ptypeLocal:
+		return "local"
+	case ptypeVendor:
+		return "vendored"
+	case ptypeGopath:
+		return "gopath"
+	case ptypeGoroot:
+		return "core"
+	case ptypeCgo:
+		return "cgo"
+	default:
+		return "missing"
+	}
+}
+
 type pinfo struct {
 	Name, Path string
 	PType      ptype