Port to Darwin and FreeBSD.

This should be a pretty clean port to OS X and FreeBSD.

Use err(3) and warn(3) instead of error(3).

Define __fpending.

Hide headers specific to Linux.

This was mostly taken from the FreeBSD port by mm@FreeBSD.org.

Add a howto build on Darwin/OS X.