Add support for node-webkit

The check "source[property].constructor === Object" always comes back false causing the source not to be merged into the destination correctly. My fix does allow extended objects through (like Buffer... hence the second check) were it wouldn't before. I would consider it a good thing... but maybe it was originally intended to block those?