Cache and re-use v8::FunctionTemplate on object wrapping
Use weak persistent handles and DELREF zval.
Correctly attach hidden values to objects from cached templates.
Add constructor call callback and create PHP objects as needed.