HubProxy: raise exception on login failures

Currently HubProxy discards all exceptions related to logins. With this
patch, callers will actually know if the login failed, instead of
subsequent requests failing with an error like "Anonymous access
denied".

Most of the time we want login failures to be reported, but the current
behaviour means that it was possible to have incorrect authentication
settings in the client and still perform read-only operations that do
not require authentication (for example, listing systems and fetching
jobs results). To avoid breaking this use case, client commands which do
not require authentication are marked as such, and these commands will
skip the login step so that they may be used with incorrect or missing
auth settings.

Bug: 1067243
Change-Id: I248855bb6489c06bd345f1bc317563b3c6bc8b86