add support for package dependencies

apt-get upgrade holds back packages that have new dependencies. This patch adds
support for installing update packages and their dependencies by using
"apt-get dist-upgrade" instead of "apt-get upgrade".

Compare the following output:

~# apt-get upgrade --assume-no -V
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages have been kept back:
   linux-generic (3.2.0.53.63 => 3.2.0.55.65)
   linux-headers-generic (3.2.0.53.63 => 3.2.0.55.65)
   linux-image-generic (3.2.0.53.63 => 3.2.0.55.65)
   python-keystoneclient (0.2.3-1nectar8 => 0.3.2-0ubuntu1~cloud0)
   python-swift (1.8.0-0ubuntu1.2~cloud0 => 1.10.0-0ubuntu1~cloud0)
   python-swiftclient (1.3.0-0ubuntu1~cloud0 => 1.6.0-0ubuntu1~cloud0)
   swift (1.8.0-0ubuntu1.2~cloud0 => 1.10.0-0ubuntu1~cloud0)
   swift-account (1.8.0-0ubuntu1.2~cloud0 => 1.10.0-0ubuntu1~cloud0)
   swift-container (1.8.0-0ubuntu1.2~cloud0 => 1.10.0-0ubuntu1~cloud0)
   swift-object (1.8.0-0ubuntu1.2~cloud0 => 1.10.0-0ubuntu1~cloud0)
0 upgraded, 0 newly installed, 0 to remove and 10 not upgraded.

vs

~# apt-get dist-upgrade --assume-no -V
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following NEW packages will be installed:
   linux-headers-3.2.0-55 (3.2.0-55.85)
   linux-headers-3.2.0-55-generic (3.2.0-55.85)
   linux-image-3.2.0-55-generic (3.2.0-55.85)
   python-d2to1 (0.2.10-1ubuntu4~cloud0)
   python-dnspython (1.11.0-1~cloud0)
   python-netaddr (0.7.7-1~cloud0)
   python-pbr (0.5.21-0ubuntu4~cloud0)
The following packages will be upgraded:
   linux-generic (3.2.0.53.63 => 3.2.0.55.65)
   linux-headers-generic (3.2.0.53.63 => 3.2.0.55.65)
   linux-image-generic (3.2.0.53.63 => 3.2.0.55.65)
   python-keystoneclient (0.2.3-1nectar8 => 0.3.2-0ubuntu1~cloud0)
   python-swift (1.8.0-0ubuntu1.2~cloud0 => 1.10.0-0ubuntu1~cloud0)
   python-swiftclient (1.3.0-0ubuntu1~cloud0 => 1.6.0-0ubuntu1~cloud0)
   swift (1.8.0-0ubuntu1.2~cloud0 => 1.10.0-0ubuntu1~cloud0)
   swift-account (1.8.0-0ubuntu1.2~cloud0 => 1.10.0-0ubuntu1~cloud0)
   swift-container (1.8.0-0ubuntu1.2~cloud0 => 1.10.0-0ubuntu1~cloud0)
   swift-object (1.8.0-0ubuntu1.2~cloud0 => 1.10.0-0ubuntu1~cloud0)
10 upgraded, 7 newly installed, 0 to remove and 0 not upgraded.

Change-Id: Ib420b7eebf40343ae9a4ced3af8930c27c12a97c
Merge "add support for package dependencies"