UIViewController appearance methods

I was doing some silly things trying to call appearance methods like `viewWillAppear`, `viewDidAppear`, `viewWillDisappear`, and `viewDidDisappear` manually. Instead, the `UIViewController` interface has some super nifty methods to be used by container view controllers. (read about [view controller containment](http://www.objc.io/issue-1/containment-view-controller.html))

These methods are:

* `- (void)beginAppearanceTransition:(BOOL)isAppearing animated:(BOOL)animated;` where `isAppearing` is `true` when appearing and `false` when disappearing.
* `- (void)endAppearanceTransition;` signifies that the transition has completed;

So yeah. Whoops. Now we're using these.

related: it looks like each method can only be called twice per view controller, once for appearance and once for disappearance.