FFI-compatible JNIEnv struct. You can safely use this as the JNIEnv argument
to exported methods that will be called by java. This is where most of the
magic happens. All methods on this object are wrappers around JNI functions,
so the documentation on their behavior is still pretty applicable.