function animate(animation) {
    var prev = State.last;
    animation._prev = prev;
    animation._next = undefined;
    if (prev) {
        prev._next = animation;
    } else {
        State.first = animation;
    }
    State.last = animation;
    if (!State.firstNew) {
        State.firstNew = animation;
    }
    var element = animation.element,
        data = Data(element);
    if (!data.count++) {
        ////////////////////////
        // Feature: Classname //
        ////////////////////////
        addClass(element, State.className);
    }
}
Simple queue management. Un-named queue is directly within the element data,
named queue is within an object within it.