title: subscript is unavailable: cannot subscript String with an Int
body: <p>In the following code I am trying to populate a detail view from a tableView but keep getting that NSIndexPath error. Without the 'if let indexPath' and [indexPath] it only returns the first section in the dictionary.</p>
  
  <pre><code>override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
      let wod = FilteredWodList[index]
      if segue.identifier == "showBenchmarkDetail" {
          let controller = segue.destinationViewController as? BenchmarkWODDetailView
          if let indexPath = self.tableView.indexPathForSelectedRow
  
          {
          controller?.nameText = wod.name![indexPath.row]
          controller?.descriptionText = wod.description![indexPath.row]
          controller?.exerciseText = wod.exercise![indexPath.row]
          }
  </code></pre>
  
  <p>I have also tried it with the following extension which instead causes me to the error 'Cannot assign value of type Character to type String'.</p>
  
  <pre><code>extension String {
  subscript (index: Int) -&gt; Character {
      let charIndex = self.startIndex.advancedBy(index)
      return self[charIndex]
  }
  
  subscript (range: Range&lt;Int&gt;) -&gt; String {
      let startIndex = self.startIndex.advancedBy(range.startIndex)
      let endIndex = startIndex.advancedBy(range.count)
  
      return self[startIndex..&lt;endIndex]
   }
  }
  </code></pre>
  
  <p><a href="https://github.com/Brandon-316/WOD-Guide" rel="nofollow">https://github.com/Brandon-316/WOD-Guide</a>
  Located in BenchmarkWODViewController.swift</p>