raise when waitpid2 returns non-nil that isn't a pid.

This isn't something that should ever happen.
I can't reproduce it locally, nor can I find documentation showing
any other response other than a pid in ruby or unix/linux docs.
Nevertheless, it is occurring on at least one customer instance,
so hopefully the error output here will help us track it down.
Give better errors when waitpid2 returns an unexpected value
Merge pull request #101 from engineyard/waitpid-error

raise when waitpid2 returns non-nil that isn't a pid