Move files around (this time: receive related to demux, send related to router). Change SendBuffer API, change ReceiveBuffer API. Changed some of the demux_ methods to use ReceiveBuffer* (todo). Add concept of ReceiveCallback for managed sockets