Fixes bug where loader callback sometimes runs more than once

This bug comes up in cases where a list of multiple module ids is mapped
to the same dependency list and callback.  For example:

    require(['tAMD/loader'], function(loader) {
        loader.map(['fakeDep1', 'fakeDep2'], [], function() {
            /* callback code */
        });
    });

In this example the callback runs twice if both 'fakeDep1' and
'fakeDep2' are required.