nodePackages: Enable source patching, patch shebangs, patch versions, fix recursive dependencies runtime

This enables patching of node packages and adds patch for shebangs and patch for versions. This pull request replaces https://github.com/NixOS/nixpkgs/pull/4850/files