Threads usage cleanup. Still at least one bug to go.
diff --git a/isisd/isis_spf.c b/isisd/isis_spf.c
index 37c435e..a522877 100644
--- a/isisd/isis_spf.c
+++ b/isisd/isis_spf.c
@@ -944,15 +944,11 @@
   spftree->pending = 0;
   
   if (level == 1)
-    spftree->t_spf_periodic =  thread_add_timer (master, 
-						 isis_run_spf_l1, area, 
-						 isis_jitter 
-						 (PERIODIC_SPF_INTERVAL, 10));
+    THREAD_TIMER_ON(master, spftree->t_spf_periodic, isis_run_spf_l1, area,
+        isis_jitter(PERIODIC_SPF_INTERVAL, 10));
   else 
-    spftree->t_spf_periodic =  thread_add_timer (master, 
-						 isis_run_spf_l2, area, 
-						 isis_jitter 
-						 (PERIODIC_SPF_INTERVAL, 10));
+    THREAD_TIMER_ON(master, spftree->t_spf_periodic, isis_run_spf_l2, area,
+        isis_jitter(PERIODIC_SPF_INTERVAL, 10));
 
   return retval;
 }
@@ -1042,8 +1038,7 @@
     spftree->pending = 1;
     return retval;
   }
-  if (spftree->t_spf_periodic)
-    thread_cancel (spftree->t_spf_periodic);
+  THREAD_TIMER_OFF(spftree->t_spf_periodic);
 
   if (diff < MINIMUM_SPF_INTERVAL) {
     if (level == 1)
@@ -1075,8 +1070,7 @@
 
   diff = now - spftree->lastrun; 
   
-  if (spftree->t_spf_periodic)
-    thread_cancel (spftree->t_spf_periodic);
+  THREAD_TIMER_OFF(spftree->t_spf_periodic);
   
   /* FIXME: let's wait a minute before doing the SPF */
   if (now - isis->uptime < 60 || isis->uptime == 0) {