[registration] Restore original domain on registration failure

The main purpose of this PR is setting the result of `domain()` as `SSU_NETWORK_REQUEST_DOMAIN_DATA` attribute to the request and then restore this value via `setDomain` in case of failures with the registration.

To easily catch all failure cases and not have to put the domain restoration code into multiple places, the `requestFinished` method was refactored a bit to use `goto` instead of breaking out of loops.