Improved the --needed option to work as advertised (i.e.: install a package only if it is not installed and it's not up-to-date)