JQuery KillingQueue allows you to request callbacks which will optionally wait or be discarded if another callback is already in progress