Add oxygen-gtk3 and rename oxygen_gtk to oxygen-gtk2.

oxygen_gtk is still kept for backwards compatibility.
Add Jim Tcl interpreter
jimtcl: remove end dot from description
nodePackages: add support for recursive dependencies

This is a drop-in replacement that handles nodejs recursive dependencies by
propagating already visited nodejs packages and creating shims for recursive
ones. This implementation handles both, new and old npm2nix output format.
Small style fixups

In this commit, I modified some files, conforming them to a
idiosyncratic standard - mainly, a template for meta attribs.
Fix #4019
Merge pull request #4032 from copumpkin/xpwn-fix

Fix #4019
Merge pull request #3829 from ruediger/add/oxygen-gtk3

Add oxygen-gtk3.
Merge pull request #4018 from offlinehacker/npm_recursive

nodePackages: add support for recursive dependencies
Updated nodejs packages
php: update from 5.4.31 to 5.4.32, potentially fixes CVE-2014-3587, CVE-2014-3597, CVE-2014-5120
vagrant: update from 1.6.4 to 1.6.5
scala: update from 2.11.0 to 2.11.1
qrencode: update from 3.4.3 to 3.4.4
pv: update from 1.5.3 to 1.5.7
pmd: update from 4.2.5 to 4.2.6
panotools: update from 2.9.18 to 2.9.19
liboauth: update from 1.0.2 to 1.0.3, potentially fixes CVE-2013-4390
libmicrohttpd: update from 0.9.35 to 0.9.37
ircdHybrid: update from 7.2.2 to 7.2.3, potentially fixes CVE-2013-0238