Discuss a possible redesign of NanNew(...)

This is not a real PR. It's just a ticket with code.

I took a minute and scribbled out a possible redesign of `NanNew(...)`. It's more flexible and allows for very fine grained control but at the same time adds more structure. It also is totally non-greedy and very portable. Please note the generic handling of all v8 integer types. Also note that `v8::External` now behaves as expected. The replacement is currently called `NanNew2(...)` so I can mix and match.

It kind of evolved out of #209 and addresses concerns raised in the [NAN 2 Discussion](https://github.com/rvagg/nan/issues/208#issuecomment-60776304).

Sorry about the indentation. But ignoring that what do you guys think?