Slightly modified interface to support dynamic peer addition
implemented message queue into the peer model