Create an object wrapping a native symbol, fulfilling the contract of NFI symbols. Symbols
passed into this method should implement the
NativeSymbolLibrary.
The returned object has an invocable member "bind" that can be used to bind NFI signatures to
the symbol. It will also forward the
InteropLibrary#isPointer,
InteropLibrary#asPointer and
InteropLibrary#toNative messages to the wrapped
symbol.
Implementations of
NFIBackend should use this method to create the symbols contained
in a library. It may also be used for returning pointer values that can point to executable
code.