updated MessagePasser.receive

May need to move where we call updateRules for receive if we are
supposed to check for updated rules before each time we possibly add to
the incoming_buffer or before each call to MessagePasser.receive