title: Reordering UITableView without Using UITableViewController
body: <p>So this is what I have (simplified):</p>
  
  <pre><code> - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
      return 10;
      }
  
      -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
          if (indexPath.row == 0) {
              cell.textLabel.text = @"First";
          }else{
              cell.textLabel.text = [NSString stringWithFormat: @"%d", indexPath.row];
        }
        return cell;
      }
  </code></pre>
  
  <p>What I need to do is: </p>
  
  <p>Change <code>numberOfRowsInSection()</code> to return 11, and then change code in <code>cellForRowAtIndexPath()</code> to set <code>cell.textLabel = @"Top Spot";</code> if row is 10. </p>
  
  <p>Then I want to move "Top Spot" to the top of <code>UITableView</code> list before "First" as if "Top Spot" has always been row 0 and "First" has always been row 1. I can't do it that way in the controller since it's already out in the app store and an update would have users reporting wrong values for existing records. So as far as the rest of the app is concerned, "Top Spot" is actually row 10 and only the display of the table knows what's happening. User's that select "Top Spot" would actually be selecting row 10, and not row 0.</p>
  
  <p>Is this possible?</p>
  
  <p>Thanks for any input.</p>