Implement two 5xx failover to mirror tests

These both currently fail against the real service because `beresp.saintmode` doesn't appear to be working as expected:
```
=== RUN TestFailoverOrigin5xxUseFirstMirror
--- FAIL: TestFailoverOrigin5xxUseFirstMirror (0.08 seconds)
        cdn_failover_test.go:63: Server origin received more than one request
        cdn_failover_test.go:108: Received incorrect response body. Expected "lucky golden ticket", got "origin"
=== RUN TestFailoverOrigin5xxFirstMirror5xxUseSecondMirror
--- FAIL: TestFailoverOrigin5xxFirstMirror5xxUseSecondMirror (0.05 seconds)
        cdn_failover_test.go:131: Server origin received more than one request
        cdn_failover_test.go:181: Received incorrect response body. Expected "lucky golden ticket", got "origin"
```
/cc @mattbostock 
Should we use `waitDuration` here, or would it be more reliable to use a multiple of `cacheDuration` if we're waiting for the object TTL to expire?