def build_message_data( builder )
      builder.build do
        factory? << Parfait.object_space.get_factory_for(:Message)
        next_message? << factory[:next_object]

        #FIXME in a multithreaded future this should be done using lock free compare and swap.
        next_message_reg! << next_message[:next_message]
        factory[:next_object] << next_message_reg

        # FIXME: Also we relink used messages at the moment. This will have to stop
        #        when implementing continuations (or block passing/bindings)
        #        then we may run out and that means cheking and maybe getting more
        message[:next_message] << next_message
        next_message[:caller] << message
        next_message[:method] << callable

      end
    end
def build_message_data( builder )
      builder.build do
        factory? << Parfait.object_space.get_factory_for(:Message)
        next_message? << factory[:next_object]

        #FIXME in a multithreaded future this should be done using lock free compare and swap.
        next_message_reg! << next_message[:next_message]
        factory[:next_object] << next_message_reg

        # FIXME: Also we relink used messages at the moment. This will have to stop
        #        when implementing continuations (or block passing/bindings)
        #        then we may run out and that means cheking and maybe getting more
        message[:next_message] << next_message
        next_message[:caller] << message
        next_message[:method] << callable

      end
    end
get the next message from space and unlink it there
 also put it into next_message of current message (and reverse)
 set the method into the message