code: function(target, duration, easing, delay, callback) {
                  if (arguments.length === 2 && typeof duration == "object") {
                      easing = duration.easing;
                      delay = duration.delay;
                      callback = duration.callback;
                      duration = duration.duration;
                  }
                  if (arguments.length === 4 && typeof delay == "function") {
                      callback = delay;
                      delay = 0;
                  }
                  var timeline = this.create(target, duration, easing, callback);
                  delay = parseTime(delay);
                  if (delay > 0) {
                      setTimeout(function() {
                          timeline.play();
                      }, delay);
                  } else {
                      timeline.play();
                  }
                  return timeline;
              }
docs: @method start()
  @for kity.Animator
  @description 使用当前的动画器启动在指定目标上启动动画
  
  @grammar start(target, duration, easing, delay, callback) => {kity.Timeline}
  @grammar start(target, option) => {kity.Timeline}
  
  @param  {object} target
  启动动画的目标
  
  @param  {Number|String} duration|option.duration
  [Optional] 动画的持续时间，如 300、"300ms"、"1.5min"
  
  @param  {String|Function} easing|option.easing
  [Optional] 动画使用的缓动函数，如 "ease"、"linear"、"swing"
  
  @param  {Number|String} delay|option.delay
  [Optional] 动画的播放延迟时间
  
  @param  {Function} callback|option.callback
  [Optional] 动画结束后的回调函数
  
  @example
  
  ```js
  var turnRed = new kity.Animator(
  new kity.Color('yellow'),
  new kity.Color('red'),
  function(target, value) {
  target.fill(value);
  });
  
  turnRed.start(rect, 300, 'ease', function() {
  console.log('I am red!');
  });
  ```