Clean up usage of Rx and add support for retrying HTTP 503

This was done for UDP only to introduce the concept of @Rule.  The same can be applied to all test servers.
The original intention of the test is a negative test. So we should probably keep that by setting the server list (badserver, badserver, badserver, goodserver).