Fix #1

the MessageReceiver now stores the frames to process in a queue
It only proceeds to the next frame in the queue when
it has been told it's allowed to do so