Exception was not being thrown properly if retries fail

Due to the retry mechanism, exceptions are suppressed until the
retries are exhausted.  The code did not properly throw an exception
after the last retry failed, which meant that a generic PHP error
was thrown instead (due to an empty response).
Add `retries` parameter to whitelist

Retries parameter was not whitelisted, which means it could not be
specified despite being a legitimate param.
Update yaml tests
ZeroRetry test needs to specify a non-existent host