In order to do this, buffer data management was moved out of the JS entry-point New, and into Replace. Secondly, the constructor makes an immediate call to Replace, and in order for ArrayData calls to work, wrapping must already be set up. Now, the constructor takes the wrappee as a parameter.
New() methods should be invoked as constructors, not regular functions. Corner cases like Script::New() may cause a SIGSEGV when the GC is run. More details: http://groups.google.com/group/nodejs/browse_thread/thread/a7e5db68d4cd6356