Add v8::FunctionTemplate bindings.
Pass values by value rather than by reference.

Remove a layer of indirection by passing most values around as actual
values, not references.  Simplifies both the API and the implementation.

Exploits the fact that `struct S(*mut S)` decays to `*mut S` when
passing around values.
Temporarily disable native_api_call test.

Known broken, investigation pending.  Suspect is an ABI compatibility
bug in the v8::FunctionCallbackInfo or v8::ReturnValue bindings.