Fix "Hide sidebar in landscape" setting on iPhone 6+.

The root issue was that I hadn't considered how the state of the split view controller on an iPhone 6+ is different from an iPad. Namely that there isn't a detail view controller in portrait. In the meantime the configureSplitViewControllerDisplayMode method now considers all three possible display modes. As a bonus, the UISplitViewControllerDelegate implementation is now in its own extension.