anchor.diff:  (defmethod msg-decode ((type (eql 'msg-tf)) pointer)
     (aa::make-quaternion-translation :quaternion
                                      (msg-decode 'quaternion
  -                                               (foreign-slot-value pointer '(:struct wt-tf) 'r))
  +                                               (foreign-slot-value pointer '(:struct tf) 'r))
                                      :translation
                                      (msg-decode 'vec3
  -                                               (foreign-slot-value pointer '(:struct wt-tf) 'x))))
  +                                               (foreign-slot-value pointer '(:struct tf) 'x))))
  +
  +;; ;; (defmethod decode-msg ((msg msg-tf))
  +;; ;;   (msg-decode 'msg-tf (msg-aref-ptr msg 0)))
   
   (defcstruct msg-joystick
     (header (:struct msg-header))
  
positive.code: (defmethod msg-decode ((type (eql 'msg-wt-tf)) pointer)
    (aa::make-quaternion-translation :quaternion
                                     (msg-decode 'quaternion
                                                 (foreign-slot-value pointer '(:struct wt-tf) 'r))
                                     :translation
                                     (msg-decode 'vec3
                                                 (foreign-slot-value pointer '(:struct wt-tf) 'x))))
  
negative.code:       (setf (aref v i)
              (mem-aref pointer :double i)))
      v))
  
  (defun check-msg-header (msg)
    ;; todo
    )
  
  (defmacro def-msg-base (type)
    (let ((make-it (intern (concatenate 'string "MAKE-" (string type)))))
  