Add support for OpenBSD.

Use ppoll() on OpenBSD.  Also, fix interrupt handling to recognize
that on FreeBSD and OpenBSD, an interrupt might have been delivered
even if pselect()/ppoll() don't return -1/EINTR.
Don't poll pipes using POLLRDHUP

POLLRDHUP is Linux-specific, and isn't necessary for polling pipes
anyway.  Linux and OpenBSD both return POLLHUP if no process has the
pipe open for writing.
Merge pull request #565 from mdempsky/master

Add support for OpenBSD.
Fix bootstrap on OS X.

This was broken in 4c552c2c3cbc07acce9c1a379fee054a3f680100.
Merge pull request #570 from nico/fixdarwin

Fix bootstrap on OS X.