juju/testing: do not tear down connection if setup fails

Our test suite helpers are a double edged sword. They tend to expect the best, and blow up when the worst happens. This change is an example of this, if the setup phase failed, then what was a c.Assert("couldn't talk to mongo") becomes a panic when the tear down phase tries to close a connection which was never opened.
I think we still need to set `s.apiStates = nil`, probably after the range over s.apiStates.