Fixed lp:1394524 - Backported for 1.21 - apt-get retrying works

Original PR: https://github.com/juju/juju/pull/1195

Bug: http://pad.lv/1394524

Since juju/utils changed a lot since 1.21-beta3 was released, the
backport needed to include a few other changes, e.g. make sure
set.NewStrings() is used everywhere before calling set.Add() as it now
panics, as well as a few changes around backups.

Live tested on local, maas, ec2.