RFC: writesto(cmd) do io ... end

There was a recent [thread on the mailing list](https://groups.google.com/forum/#!topic/julia-users/2SbdNdW_EEM) about how to use a pager like `less` in the REPL.    I was curious to see how we would page to `less` directly, and it took me a bit more digging than I would have liked.

This patch simplifies writing to a process by adding a new method to `writesto` that takes a function `f(io)`, much like `open` and friends, so that you can do e.g.
```
writesto(`less`, STDOUT) do io
      for i = 1:2000
          println(io, i)
      end
end
```
to page output through `less`.

(I thought about a different name, like `writeall`, but overloading `writesto` makes it easier to discover the alternative asynchronous form of `writesto`.

An alternative would be to overload `open` to either read or write from a command.  But in this case I would get rid of `writesto` and `readsfrom` entirely and replace them by `open(cmd, "w")` and `open(cmd, "r")`.