anchor.diff:    @function up.morph
     @param {Element|jQuery|string} source
     @param {Element|jQuery|string} target
  -  @param {Function(oldElement, newElement)|string} transitionOrName
  +  @param {Function(oldElement, newElement)|string} transition
     @param {number} [options.duration=300]
       The duration of the animation, in milliseconds.
     @param {number} [options.delay=0]
  
positive.code:       var warning = document.querySelector('.warning')
        warning.style.opacity = 0
        up.animate(warning, { opacity: 1 })
  
    \#\#\# Multiple animations on the same element
  
  
negative.code:   ###
    finish = (elementOrSelector) ->
      motionController.finish(elementOrSelector)
  
    ###**
    This event is emitted on an [animating](/up.animating) element by `up.motion.finish()` to
    request the animation to instantly finish and skip to the last frame.
  
    Promises returned by completed animation functions are expected to settle.
  
    Animations started by `up.animate()` already handle this event.
  
    @event up:motion:finish
    @param {Element} event.target
      The animating element.
    @experimental
    ###
  
    ###**
    Performs an animated transition between the `source` and `target` elements.
  