TODO: - [ ] Properly define interfaces to send/recv, isend/irecv, async_send, async_recv, etc - [ ] add send/recv functions to test suite (see eg #14 )