Refactoring intent API.
diff --git a/cli/src/main/java/org/onlab/onos/cli/net/IntentRemoveCommand.java b/cli/src/main/java/org/onlab/onos/cli/net/IntentRemoveCommand.java
index b2cef88..df5f335 100644
--- a/cli/src/main/java/org/onlab/onos/cli/net/IntentRemoveCommand.java
+++ b/cli/src/main/java/org/onlab/onos/cli/net/IntentRemoveCommand.java
@@ -7,6 +7,8 @@
 import org.onlab.onos.net.intent.IntentId;
 import org.onlab.onos.net.intent.IntentService;
 
+import java.math.BigInteger;
+
 /**
  * Removes host-to-host connectivity intent.
  */
@@ -22,12 +24,11 @@
     protected void execute() {
         IntentService service = get(IntentService.class);
 
-        int radix = id.startsWith("0x") ? 16 : 10;
-        if (radix == 16) {
+        if (id.startsWith("0x")) {
             id = id.replaceFirst("0x", "");
         }
 
-        IntentId intentId = IntentId.valueOf(Long.parseLong(id, radix));
+        IntentId intentId = IntentId.valueOf(new BigInteger(id, 16).longValue());
         Intent intent = service.getIntent(intentId);
         if (intent != null) {
             service.withdraw(intent);
diff --git a/core/net/src/main/java/org/onlab/onos/net/intent/impl/IntentManager.java b/core/net/src/main/java/org/onlab/onos/net/intent/impl/IntentManager.java
index 1838814..03d5ce8 100644
--- a/core/net/src/main/java/org/onlab/onos/net/intent/impl/IntentManager.java
+++ b/core/net/src/main/java/org/onlab/onos/net/intent/impl/IntentManager.java
@@ -257,8 +257,8 @@
      * @return result of compilation
      */
     private List<Intent> compileIntent(Intent intent) {
-        if (intent instanceof Intent) {
-            return ImmutableList.of((Intent) intent);
+        if (intent.isInstallable()) {
+            return ImmutableList.of(intent);
         }
 
         List<Intent> installable = new ArrayList<>();