anchor.diff:  ;  return most specific talent-property
   ;FUCK YOU SLATE
   
  -(defun dispatch-talent (talent-name &rest args)
  -  ;; step 1 - find all talents with talent-name that the first arg 
  -  ;; has role position 1 in. (incl. parents), push them into a list.
  -  ;; 
  -  ;; step 2 -
   
  -  args
  -  )
  -
  -(defmacro deftalent (name lambda-list &body body)
  -  `(create-talent )
  -  )
  -
  -
  -;;;
  -;;; Tests
  -;;;
  
positive.code: (defun find-most-specific-talent (selector &rest args)
    (let ((n (length args))
  	(most-specific-talent nil)
  	(ordering-stack nil))
      (loop 
         for index upto n
         for position upto n
         do (let ((position 0))
  	    (push (elt args index) ordering-stack)
  	    (loop while ordering-stack
  	       do (let ((arg (pop ordering-stack)))
  		    (loop for participation in (sheep-direct-participations arg)
  		       when (and (eql selector (name participation))
  				 (eql index (role participation)))
  		       do (setf (elt (standard-talent-rank (talent-pointer participation)) index)
  
negative.code:     :accessor talent-pointer)
     documentation))
  
  (defmacro deftalent (name lambda-list &body body)
    `(create-talent
      )
    )
  
  (defun create-talent (&key name lambda-list specializers body)
    (let ((talent (make-instance 'standard-talent
  			       :name name
  			       :lambda-list lambda-list
  