Add JSFunctionWrapper in preparation for bindings-generator changes.
Update bindings-generator to generate conversion to std::functions.