defined? check for RUBY_ENGINE (e.g. mri 1.8.7)
removed a bunch of travis-unsupported rubies
rubinius ffi; handle conditionals via begin/rescue