Modify "roles" system to better match forums

The forums have been updated so that admins can add arbitrary classes to all of a given user’s posts, allowing for custom mod star-like icons without having to put user IDs directly in the CSS. This makes our remote CSS downloading less useful since we don’t have those custom classes in our templates.

Instead of checking the “.author” DT for specific classes, let’s grab all of that element’s classes so that we automatically get the new classes as admins add them.

Closes #304.
Bump version to 2.0.13.
Restore admin/mod/IK attribute scraping.

Not sure we actually use these anywhere, but there's tests for it.
Include app version number in post templates

When editing the awfulapp.com hosted CSS file we can’t be sure what
version of the app anyone is using. This could be a problem if we ever
change the template, so we should include a way of targeting specific
app versions in the CSS.
Update Dependencies: AFNetworking, GRMustache, HTMLReader
Migrate view models to new GRMustache version.

Need to expose the properties we're using on the underlying model object.
Bump version to 3.0, deployment target to iOS 8.0, and temporarily silence deprecation warnings.
Switch to (horizontal, UIKit) tab bar controller on all devices.

This is how it was in Awful 1, and to be honest it's the superior interface.

The PM and Leper's Colony view controllers needed more helpful tab bar item titles, and the sidebar on iPad can shrink down now as there's no horizontal space needed for a tab bar.

Bump the interface version stored when preserving state, as they're no longer compatible (the class of the decoded object for the "root" identifier doesn't match). And while we're here, formalize and describe the interface versions.

Don't try to restore old, incompatible state. This means we can get rid of the otherwise pointless AwfulExpandingSplitViewController class, because we're not restoring state that involves it.
Mark off part of app delegate.
Delete pointless Info.plist keys.

I hope they're pointless...
Extract view-controller-of-type hierarchy search to UIViewController category.
Switch to UISplitViewController on all devices.

* Delete home-baked AwfulSplitViewController.
* Use -showDetailViewController:sender:.

As a bonus:

* Set light content status bar style on launch, and opt out of UIViewController-based status bar style. Unlike AwfulSplitViewController, UISplitViewController returns nil for
-childViewControllerForStatusBarStyle. We use light content everywhere anyway, so easy fix.
* Since we've already given up restoring state from Awful 2, let's rename all the root view controller restorationIdentifiers!
* Don't consider user interface idiom when restoring state. Xcode 6 no longer tries to mix and match idioms in the iOS Simulator.
Fix iOS 8 deprecations.
Reimplement jump to page view controller as Selectotron using iOS 8 presentation.

Bonus:
* Swift! So hello bridging header, relevant project settings, etc.
* Since Swift enums and C enums don't quite map perfectly, change some AwfulPostsViewController API to work in integers instead of AwfulThreadPage.
* Delete unused theme keys that I only just noticed when searching for "jumptopage".
* Normally I would split out Selectotron protocol implementations into extensions, but Xcode 6 Beta 6 does not make doing so an enjoyable experience.
Rename +[AwfulSettings settings] to +sharedSettings for Swift availability.

Can't get at class methods named for a suffix of the class I guess.
Redo posts page settings view for iOS 8 presentation.
Converted AwfulDateFormatters to Swift
Fix copyright header.
Empty xcodeproj of default class prefix.
Move in-app action sheet over to a NIB, with Swift, and iOS 8-style presentation.