Improved BP async performance

The messages in the BP class now represent the messages coming into the
node, this simplifies code and allows the async implementation to
propapagate messages on the edges of the grid as well