Message passing

The messaging passing services provide two way communications using the familiar send/recv model. These services are asynchronous, but can be synchronized using the dacs_test() and dacs_wait() services as needed.