beam: a better communication protocol for distributed systems
beam: basic unix socket transport
beam: basic file wrapper
beam: simple pipe implementation
beam: synchronize Pipe.Send and Pipe.Close with a mutex
beam: Copy and Splice utility functions
beam: WrapIO() wraps familiar Golang io interfaces inside a Stream object
beam: Func wraps a handler function into a Stream
beam: fix bug in File.Receive()
beam: fix Func to fully implement the Stream interface
beam: DevNull: a convenience stream which discards all messages sent to it
beam: NewReader and NewWriter: wrap any Stream in an io.Reader or io.Writer
beam: new example: 'minirpc', a minimal in-memory rpc engine
beam: NewFile wraps an os.File object in a Stream.
beam: Splice closes both streams upon completion
beam: more tests for Splice and DevNull
beam: improvements to Func

* Func.Send spawns a new goroutine to handle each message
* As a result, Func.Send never fails
* After a new stream is received and processed, it is closed. This can be used for synchronization
* Func.Receive returns io.EOF instead of failing
* A few tests to enforce the above
beam: WrapIO.Send and WrapIO.Receive don't fail if Write and Read are not implemented, respectively
beam: fix Pipe.Send to correctly emulate fd passing
beam: improve example 'minirpc' with handling of stdout and stderr