Piper, for piping from/to spawned processes

The `Piper` class is a wrapper around `#popen3`. This is intended to replace the use of `systemu`, which does not work reliably on JRuby.

Built-in classes FTW.

[Diff best viewed with `?w=1`](https://github.com/nanoc/nanoc/pull/417/files?w=1), because some `if_have 'systemu' do … end` blocks were removed.

To do:

* [x] Implement sending data through `stdin`
* [x] Migrate other parts that use `#popen3` or `systemu` to `Piper`