start(options) {
        options.duration = valueOrDefault(options.duration, Infinity);
        animation.instances[animation.count] = options;
        return animation.count++;
    }
Starts a new animation.
@param {Object} options - Animation options
@param {Function} options.callback - Function called on every frame
@param {Function} options.complete - Function called when the animation completes
@param {number} options.duration - Animation duration. Default is Infinity
@param {number} options.start - Animation start time (same timestamp as performance.now())
@param {number} options.frameRate - Animation frames per second
@param {Object} options.clock - If specified, animation speed will be affected by its clock speed
@returns {number} Animation ID which can be used to stop