MODULES: lib1, lib2, main

STEP 0:
    libs: lib1, lib2, main
    dirty js modules: lib1, lib2, main
    dirty js files:   lib1/l1, lib2/l2, main/klass, main/test, main/m, main/m.export, main
STEP 1..2:
    libs: lib1, lib2, main
    dirty js modules: lib1, lib2, main
    dirty js files:   lib1/l1, lib2/l2, main/klass, main/test
STEP 3:
    libs: lib1, lib2, main
    dirty js modules: lib1, lib2
    dirty js files:   lib1/l1, lib2/l2
STEP 4:
    libs: lib1, lib2, main
    dirty js modules: lib2, main
    dirty js files:   lib2/l2, main/klass, main/test
STEP 5..6:
    libs: lib1, lib2, main
    dirty js modules: lib1, lib2, main
    dirty js files:   lib1/l1, lib2/l2, main/klass, main/test
STEP 7:
    libs: lib1, lib2, main
    dirty js modules: lib2, main
    dirty js files:   lib2/l2, main/klass
