1. Added SegmentRoutingManager so that it can spawn any required objects such as ArpHandler or IcmpHandler
 2. Added ArpHandler.java so that it handles any ICMP request for any known host

Change-Id: Ifd93318dc4c67fde2fce2fde04fa9df33d231e41
diff --git a/src/main/java/net/onrc/onos/core/topology/HostImpl.java b/src/main/java/net/onrc/onos/core/topology/HostImpl.java
index e45e015..1023806 100644
--- a/src/main/java/net/onrc/onos/core/topology/HostImpl.java
+++ b/src/main/java/net/onrc/onos/core/topology/HostImpl.java
@@ -1,9 +1,10 @@
 package net.onrc.onos.core.topology;
 
+import static com.google.common.base.Preconditions.checkNotNull;
+
 import java.util.ArrayList;
 import java.util.List;
 
-import static com.google.common.base.Preconditions.checkNotNull;
 import net.floodlightcontroller.util.MACAddress;
 import net.onrc.onos.core.util.SwitchPort;
 
@@ -13,6 +14,7 @@
 public class HostImpl extends TopologyObject implements Host {
 
     private final MACAddress id;
+    private final int ipAddress;
 
 
     /**
@@ -24,6 +26,20 @@
     HostImpl(BaseInternalTopology topology, MACAddress mac) {
         super(topology);
         this.id = checkNotNull(mac);
+        this.ipAddress = 0;
+    }
+
+    /**
+     * Creates a Host handler object.
+     *
+     * @param topology Topology instance this object belongs to
+     * @param mac MAC address of the host
+     * @param ipv4Address IP address of ths host
+     */
+    HostImpl(BaseInternalTopology topology, MACAddress mac, int ipv4Address) {
+        super(topology);
+        this.id = checkNotNull(mac);
+        this.ipAddress = ipv4Address;
     }
 
     @Override
@@ -93,4 +109,14 @@
     public AdminStatus getStatus() {
         return AdminStatus.ACTIVE;
     }
+
+
+    /**
+     *  Returns the IP address of the Host
+     */
+    @Override
+    public int getIpAddress() {
+        // TODO Auto-generated method stub
+        return ipAddress;
+    }
 }