Make systemd consider startup finished before switch-root

A few pre-release versions of systemd (systemd-216-[2-7] in Fedora) have
a StartTimeoutAction option, which (by default) powers the system off
if startup hasn't finished after 15 minutes.

Which means: if systemd doesn't think we've completed startup, it's
going to forcibly power the system off 15 minutes into the upgrade.

This is not good behavior. We should definitely avoid this.

So: systemd considers startup "finished" once its initial job queue is
empty.  (This is when it prints that "Startup finished in [time]"
message.)

If we make upgrade-prep.service an 'idle'-type unit, it waits until the
job queue is otherwise empty before it runs. Which means that systemd
will consider the system to be started once everything but
upgrade-prep.service has finished, and then it will run upgrade-prep,
which then performs the switch-root to start the upgrade.

Resolves: rhbz#1159292