Implemented initial loading of ModelCache.
Created UiLinkId to canonicalize identifiers for UI links, based on src and dst elements.
Added idAsString() and name() methods to UiElement.
Added toString() to UiDevice, UiLink, UiHost.
Created Mock services for testing.

Change-Id: I4d27110e5aca08f29bb719f17e9ec65d6786e2c8
diff --git a/core/api/src/main/java/org/onosproject/ui/model/topo/UiElement.java b/core/api/src/main/java/org/onosproject/ui/model/topo/UiElement.java
index f0c2684..558f206 100644
--- a/core/api/src/main/java/org/onosproject/ui/model/topo/UiElement.java
+++ b/core/api/src/main/java/org/onosproject/ui/model/topo/UiElement.java
@@ -35,4 +35,15 @@
      * @return the element unique identifier
      */
     public abstract String idAsString();
+
+    /**
+     * Returns a friendly name to be used for display purposes.
+     * This default implementation returns the result of calling
+     * {@link #idAsString()}.
+     *
+     * @return the friendly name
+     */
+    public String name() {
+        return idAsString();
+    }
 }