CORD-512 Support vSG <-> vRouter default route

- Support multiple subnets per port. getIpPort() will only return the first non-/32 and non-/0 subnet
    /32 is used as vSG subnet
    /0 is used as default gateway
- Support multiple L3 unicast group on a single port
    Change the way to generate the group ID and group key
- Special case for 0.0.0.0 host. Push a /0 to IP table instead of /32
- Implement vRouterConfig
    Put VR MAC to TMAC table of all leaves when config added
        When processEthDst see PortNumber.ANY in key, match ETH_DST only
- For OFDPA, wipe existing instruction before sending to controller
    So packet that misses L3 unicast table won't be sent to controller twice
- For SpringOpenTTP, pop VLAN before sending to controller
- Move several constant definitions to SegmentRoutingService
- Add minimum priority for IP rules such that /0 won't collide with zero priority default rules
- Update the config sample
    Use VLAN=-1 for hosts
    Add example for default route

Change-Id: Id751697ce36a7e5c13b3859350ff21b585c38525
diff --git a/tools/package/config/samples/network-cfg-fabric2x2-xconnect.json b/tools/package/config/samples/network-cfg-fabric2x2-xconnect.json
index ef73261..3505fb0 100644
--- a/tools/package/config/samples/network-cfg-fabric2x2-xconnect.json
+++ b/tools/package/config/samples/network-cfg-fabric2x2-xconnect.json
@@ -86,25 +86,25 @@
         }
     },
     "hosts" : {
-        "00:00:00:00:00:01/4093" : {
+        "00:00:00:00:00:01/-1" : {
             "basic": {
                 "ips": ["10.0.1.1"],
                 "location": "of:0000000000000001/3"
             }
         },
-        "00:00:00:00:00:02/4093" : {
+        "00:00:00:00:00:02/-1" : {
             "basic": {
                 "ips": ["10.0.1.2"],
                 "location": "of:0000000000000001/4"
             }
         },
-        "00:00:00:00:00:03/4093" : {
+        "00:00:00:00:00:03/-1" : {
             "basic": {
                 "ips": ["10.0.2.1"],
                 "location": "of:0000000000000002/3"
             }
         },
-        "00:00:00:00:00:04/4093" : {
+        "00:00:00:00:00:04/-1" : {
             "basic": {
                 "ips": ["10.0.2.2"],
                 "location": "of:0000000000000002/4"