title: UIView animate completion block called twice with TRUE
body: <p>Very simple animation:</p>
  
  <pre><code>UIView.animate(withDuration: 3, delay: 0, options: .curveLinear, animations: {
    self.imageViewA.snp.remakeConstraints({ (make) in
      make.bottom.equalTo(50);
    })
    self.layoutIfNeeded();
  }, completion: {(done) in
    print(done); //called twice, both times as true
  });
  </code></pre>
  
  <p>Animation worked fine. However, the completion block is called twice. That's fine too, I understand that I need to checked the boolean to see if it actually finished or not. Well, not only is the completion block called twice, but both time, done is TRUE.</p>
  
  <p>How can I know if the animation actually completed or not?</p>