Will need to rewrite the whole authentication part using 
`connection:willSendRequestForAuthenticationChallenge:` delegate