Several small fixes:
1) Make sure the deploy.deploy step returns DEPLOYWAIT after running
prepare_image otherwise the conductor wrongly assumes that the
deploy is done.
2) Handle the case when provision_state==DEPLOYWAIT when returning
from an asynchronous deploy step.
3) Do not assume that prepare_image is always the last command to run,
sometimes get_deploy_steps sneaks in.
4) Do not issue a deprecation warning when receiving "agent is busy"
on get_deploy_steps, this is normal for fast-track.
NOTE: the last change is missing from stable/train
(cherry picked from commit