Objective-C Programming: The Big Nerd Ranch Guide (2nd Edition) - challenge problems