Dialer and ucat

This PR:
- implements a `Dialer` interface (for specifying `LocalAddr` and `Timeout`) in `net` pkg style.
- implements a `ucat` utility to test sending lots of data.

ucat starts choking after ~60MB. It's most likely in the protocol, as ucat is only doing: 
```Go
io.Copy(os.Stdout, conn)
io.Copy(conn, os.Stdin)
```
(parallelized) in the critical path.