FFI touchups, caching in call_ffi, etc