This engine has 2 threads. One to process the request queue, the other to gather up and build peer messages and send them.
This queue stores both local and remote requests for blocks