Added persistent level unlocks.

Replaced the LevelSelectionViewController's storyboard buttons with programmatic buttons, which get enabled or disabled based on an NSUserDefault integer representing the highest level unlocked. Updated the LevelViewController to update this integer when a level is completed.
I'll extract the `numLevelButtons` integer to the class level, but I'm going to leave the other constants in the method. I believe we're supposed to avoid extracting constants higher than necessary, and the aesthetic details of the buttons seem restricted to the scope of the `createLevelSelectButtons` method. I realize the buttons wouldn't be laid out properly if the `numLevelButtons` constant is too large, but I think that's acceptable until we figure out the final UI for the buttons.