Asyncprogress

Rebased and fixed. Replaces #175 and #181. Closes #169.
Way ahead of you, those overloads already exist since 1.1 or 1.2.

Re: Splitting
`nauv.h` I though consensus was that `nauv.h` was a good thing, just that `nan.h` would need to cook copypasta of the few parts it needs itself in order to remain standalone (which would be very little).

Yes, the old v8-juice is dead in the water. Breaking out whatver possible is definitely good, especially for the future. There is plenty that can be reused for v8 itself, so it makes sense.

I like thinking of `nan.h` as an end-product, it should not necessarily be read or modified directly, i.e. a build tool (M4... eww) could combine individual parts that were split up for easier development into the final `nan.h` which is the deliverable.

So, have `nan_base.magic`, `nauv.magic`, `nav8.magic`, then build `nan.h` from those, replicating the work of the preprocessor, but better.