What I also like to do is to split up successful and failing response callbacks. Less if -- win. I suggest you make a method in `PULNetworkUtils` like:
```
- (void)loginWithUserName:(NSString *)username password:(NSString *)password success:(void (^)(NSString *OAuthToken))success failure:(void (^)(NSError *error))failure;
```
As you can see, it also simplifies getting OAuth token as controller doesn't need to call `PULNetworkUtils`. And also it has less knowledge about where `PULNetworkUtils` get token from. Less knowledge class has about other classes the less coupled it becomes.