function _insertProviderSorted(array, provider, priority) {
        var index,
            prioritizedProvider = {
                priority: priority,
                provider: provider
            };

        for (index = 0; index < array.length; index++) {
            if (array[index].priority < priority) {
                break;
            }
        }

        array.splice(index, 0, prioritizedProvider);
    }
Inserts a prioritized provider object into the array in sorted (descending) order.
@private
@param {Array.<{priority:number, provider:function(...)}>} array
@param {number} priority
@param {function(...)} provider