Agreed with matzew on a IRC:
Throw lib-specific exception (e.g. PushSenderException) when statusCode >= 400.