Js function constructors

`BlockClosure#newWithValues:` provides a generic way to create Smalltalk objects from function constructors. I'm not entirely happy with the interface, as you just pass an array of arguments, which hides the purpose of the variables, and that's not very Smalltalk like. I thought about overriding `doesNotUnderstand`, but that seems like a bad idea...

I've updated the other members of the `newValue:` family to defer to this message.