Extract standalone delegate/data model objects from view controllers to support alternate design patterns

This update is a backwards-incompatible in that some API signatures have changed. Namely, several methods on TLTableViewController and TLCollectionViewController have had the table/collection view argument added to be more consistent with Apple APIs. Fixing existing code should be a straightforward exercise in changing the method signature of any method overrides and calls. Note method overrides with the old signatures won't cause compile errors, so they must be hunted down. The changes are as follows:

TLTableViewController

-- (NSString *)cellIdentifierAtIndexPath:(NSIndexPath *)indexPath;
+- (NSString *)tableView:(UITableView *)tableView cellIdentifierAtIndexPath:(NSIndexPath *)indexPath;

-- (void)configureCell:(UITableViewCell *)cell atIndexPath:(NSIndexPath *)indexPath;
+- (void)tableView:(UITableView *)tableView configureCell:(UITableViewCell *)cell atIndexPath:(NSIndexPath *)indexPath;

-- (UITableViewCell *)prototypeForCellIdentifier:(NSString *)cellIdentifier;
+- (UITableViewCell *)tableView:(UITableView *)tableView prototypeForCellIdentifier:(NSString *)cellIdentifier;

TLCollectionViewController

-- (NSString *)cellIdentifierAtIndexPath:(NSIndexPath *)indexPath;
+- (NSString *)collectionView:(UICollectionView *)collectionView cellIdentifierAtIndexPath:(NSIndexPath *)indexPath;

-- (void)configureCell:(UICollectionViewCell *)cell atIndexPath:(NSIndexPath *)indexPath;
+- (void)collectionView:(UICollectionView *)collectionView configureCell:(UICollectionViewCell *)cell atIndexPath:(NSIndexPath *)indexPath;