WIP -- define interface via FFI

:construction: :warning: **work in progress**

Hacked to use FFI instead of loading the C code via MRI shared object support. Tests pass. Not very useful yet because even on JRuby you'll have to compile the C wrapper code, and I'm not sure how that would work.