[CORD-2838][CORD-2833] Revisit McastHandler and handle shortest paths with pair links

Includes also a refactoring of the path computation

Change-Id: Iff63780a3bb3e895e55c52211290c19d993e1905
diff --git a/app/src/main/resources/OSGI-INF/blueprint/shell-config.xml b/app/src/main/resources/OSGI-INF/blueprint/shell-config.xml
index cfd7502..647eb49 100644
--- a/app/src/main/resources/OSGI-INF/blueprint/shell-config.xml
+++ b/app/src/main/resources/OSGI-INF/blueprint/shell-config.xml
@@ -71,24 +71,22 @@
         </command>
         <command>
             <action class="org.onosproject.segmentrouting.cli.McastNextListCommand"/>
-            <completers>
-                <ref component-id="mcastGroupCompleter"/>
-                <ref component-id="nullCompleter"/>
-            </completers>
+            <optional-completers>
+                <entry key="-gAddr" value-ref="mcastGroupCompleter"/>
+            </optional-completers>
         </command>
         <command>
             <action class="org.onosproject.segmentrouting.cli.McastTreeListCommand"/>
-            <completers>
-                <ref component-id="mcastGroupCompleter"/>
-                <ref component-id="nullCompleter"/>
-            </completers>
+            <optional-completers>
+                <entry key="-gAddr" value-ref="mcastGroupCompleter"/>
+            </optional-completers>
         </command>
     </command-bundle>
 
     <bean id="nullCompleter" class="org.apache.karaf.shell.console.completer.NullCompleter"/>
     <bean id="deviceIdCompleter" class="org.onosproject.cli.net.DeviceIdCompleter"/>
     <bean id="pseudowireIdCompleter" class="org.onosproject.segmentrouting.cli.PseudowireIdCompleter"/>
-    <bean id="mcastGroupCompleter" class="org.onosproject.cli.net.McastGroupCompleter"/>
+    <bean id="mcastGroupCompleter" class="org.onosproject.mcast.cli.McastGroupCompleter"/>
 
 </blueprint>