Make zypper work with mutli-pkg in pkg.latest

Also made the update discovery more reliable. It was parsing "zypper
packages -i" before, which is basically a dump of all packages, and all
versions in all repos (even the ones older than the currently-installed
version). Instead, it now uses "zypper list-updates", which only shows
available updates. I put this code into a list_updates function that can
be run from CLI to show what updates are available for install. This is
probably a good general-purpose function to add to all providers at some
point.