Yeah, sorry documentation's a bit short... I know you don't like block typedefs, but since this one is gonna get used in 3 different parts of Objective-Git I though it was nicer to have it. It's the primary "API" to allow library users to provide authentication if that's requested. It's expected to go in the prototypes of methods that ought to handle authenticating an operation.