src/limitpromises.js
function autoSpliceLaunchArray(LaunchArray, TypeKey){
    var indFirstElement = currentPromiseArrays[TypeKey].indexOf(LaunchArray[0]);
    var indLastElement = currentPromiseArrays[TypeKey].indexOf(LaunchArray[LaunchArray.length-1]);
    Promise.all(LaunchArray.map(e => {return e.result})).then(() => {
        currentPromiseArrays[TypeKey].splice(indFirstElement, indLastElement); 
    }, err => {
        currentPromiseArrays[TypeKey].splice(indFirstElement, indLastElement); 
    });
}
function autoSpliceLaunchArray(LaunchArray, TypeKey){
    var indFirstElement = currentPromiseArrays[TypeKey].indexOf(LaunchArray[0]);
    var indLastElement = currentPromiseArrays[TypeKey].indexOf(LaunchArray[LaunchArray.length-1]);
    Promise.all(LaunchArray.map(e => {return e.result})).then(() => {
        currentPromiseArrays[TypeKey].splice(indFirstElement, indLastElement); 
    }, err => {
        currentPromiseArrays[TypeKey].splice(indFirstElement, indLastElement); 
    });
}
function autoSpliceLaunchArray ( LaunchArray , TypeKey ) { var indFirstElement = currentPromiseArrays [ TypeKey ] . indexOf ( LaunchArray [ 0 ] ) ; var indLastElement = currentPromiseArrays [ TypeKey ] . indexOf ( LaunchArray [ LaunchArray . length - 1 ] ) ; Promise . all ( LaunchArray . map ( e => { return e . result } ) ) . then ( ( ) => { currentPromiseArrays [ TypeKey ] . splice ( indFirstElement , indLastElement ) ; } , err => { currentPromiseArrays [ TypeKey ] . splice ( indFirstElement , indLastElement ) ; } ) ; }
As the stack in currentPromiseArrays might get very long and slow down the application we will splice all of the launchArrays already completely resolved out of the currentPromiseArrays 
As currentPromiseArrays can get extremely large and we want to keep the app performant, autoSplice will automatically
remove a LaunchArray from the currentPromiseArrays after all of them have either been resolved or one is rejected

@param  {Object[]} LaunchArray LaunchArray you want to enable autosplice for
@param  {String} TypeKey The TypeKey or Group that the Launcharray is of

@returns {void}
As the stack in currentPromiseArrays might get very long and slow down the application we will splice all of the launchArrays already completely resolved out of the currentPromiseArrays As currentPromiseArrays can get extremely large and we want to keep the app performant autoSplice will automatically remove a LaunchArray from the currentPromiseArrays after all of them have either been resolved or one is rejected