[agent] fix pull code

Now instead of pulling and then failing if pull fails, only fail
if we don't have the image after the pull attempt.  This way, if
you're using a locally built docker image, while we'll try to pull
it, when the pull inevitably fails, the agent will see that the
image is there and continue anyway.