[AETHER-72] Refactoring RouteService

- to use bulk updates interface
- to use new getRoutesForNextHops API
- to use multi-thread resolver
- to use multi-thread hostexec
- to use a concurrent hashmap instead of synchronized
- to use a non-blocking resolved store

Additionally updates unit tests

Change-Id: Id960abd0f2a1b03066ce34b6a2f72b76566bb58c
diff --git a/apps/route-service/api/src/test/java/org/onosproject/routeservice/RouteStoreAdapter.java b/apps/route-service/api/src/test/java/org/onosproject/routeservice/RouteStoreAdapter.java
index 117a98b..1ede0fb 100644
--- a/apps/route-service/api/src/test/java/org/onosproject/routeservice/RouteStoreAdapter.java
+++ b/apps/route-service/api/src/test/java/org/onosproject/routeservice/RouteStoreAdapter.java
@@ -31,11 +31,21 @@
     }
 
     @Override
+    public void updateRoutes(Collection<Route> routes) {
+
+    }
+
+    @Override
     public void removeRoute(Route route) {
 
     }
 
     @Override
+    public void removeRoutes(Collection<Route> routes) {
+
+    }
+
+    @Override
     public void replaceRoute(Route route) {
 
     }
@@ -56,6 +66,11 @@
     }
 
     @Override
+    public Collection<RouteSet> getRoutesForNextHops(Collection<IpAddress> nextHops) {
+        return null;
+    }
+
+    @Override
     public RouteSet getRoutes(IpPrefix prefix) {
         return null;
     }