Open.popen3 does not set `$?`

This is possibly the cause of other glitches such as random
failures on Travis.

Ruby 1.8 `popen3` does set global `$?` for the exit status, Ruby
1.9 and above does not.  For Ruby 2.0 users (Mavericks and
above with recent Homebrew), success or failure of the current
external command was determined by the exit status of some
previous command.

For newer Rubies, we should use the fourth parameter from `popen3`
to get the exit status.

Closes caskroom/homebrew-fonts#186

Edit: rewrote this comment to match the amended commit message