title: PFUser Returning NIl?
body: <p>I am attempting to set up a like system in parse by partially following the Makestagram tutorial. </p>
  
  <p>I've spent hours trying to debug this and have had no luck.. </p>
  
  <pre><code>DetailViewController: 
  
  @IBAction func likeButtonTapped(sender: AnyObject) {
      merchant!.toggleLikePost(PFUser.currentUser()!)
  }
  </code></pre>
  
  <p>This statement is returning:</p>
  
  <pre><code>unexpectedly found nil while unwrapping an Optional value
  error: Execution was interrupted, reason: EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0).
  The process has been returned to the state before expression evaluation.
  </code></pre>
  
  <p>The rest of the code is as follows:</p>
  
  <p>DetailViewController: </p>
  
  <pre><code>var likeBond: Observable&lt;[PFUser]?&gt;! = Observable(nil)
  var parseHelper = ParseHelper()
  
  var likeDisposable: DisposableType?
  
  var merchant: Merchant? {
      didSet {
  
          likeDisposable!.dispose()
  
  
          if let merchant = merchant {
              likeDisposable = merchant.likes.observe { (value: [PFUser]?) -&gt; () in
                  if let value = value {
                      self.likesButton.selected = value.contains(PFUser.currentUser()!)
                      self.likesImageView.hidden = (value.count == 0)
                  } else {
                      self.likesLabel.text = ""
                      self.likesButton.selected = false
                      self.likesImageView.hidden = true
                  }
  
              }
          }
      }
  }
  </code></pre>
  
  <p>Merchant Class:</p>
  
  <pre><code>func toggleLikePost(user: PFUser) {
      if (doesUserLikeMerchant(user)) {
          // if image is liked, unlike it now
          // 1
          likes.value = likes.value?.filter { $0 != user }
          ParseHelper.unlikePost(user, merchant: self)
      } else {
          // if this image is not liked yet, like it now
          // 2
          likes.value?.append(user)
          ParseHelper.likePost(user, merchant: self)
      }
  }
  
  func doesUserLikeMerchant(user: PFUser) -&gt; Bool {
      if let likes = likes.value {
          return likes.contains(user)
      } else {
          return false
      }
  }
  </code></pre>
  
  <p>ParseHelper Class:</p>
  
  <pre><code>static func likePost(user: PFUser, merchant: Merchant) {
      let likedObject = PFObject(className: ParseLikeClass)
      likedObject.setObject(user, forKey: parseLikeFromUser)
      likedObject.setObject(merchant, forKey: ParseLikeToPost)
  
      likedObject.saveInBackgroundWithBlock(ErrorHandling.errorHandlingCallback)
  }
  
   static func unlikePost(user: PFUser, merchant: Merchant) {
      let query = PFQuery(className: ParseLikeClass)
      query.whereKey(parseLikeFromUser, equalTo: user)
      query.whereKey(ParseLikeToPost, equalTo: merchant)
  
      query.findObjectsInBackgroundWithBlock {
          (results: [PFObject]?, error: NSError?) -&gt; Void in
          if let error = error {
              ErrorHandling.defaultErrorHandler(error)
          }
  
          if let results = results {
              for likes in results {
                  likes.deleteInBackgroundWithBlock(ErrorHandling.errorHandlingCallback)
              }
          }
      }
  }
  </code></pre>
  
  <p>Any help is appreciated.. I will add the git repo if needed.</p>