Tweak to address failing compositor readImage() tests caused by async.mapLimit() inconsistencies.

Unlike async.map(), async.mapLimit():

* passes `undefined` instead of `null` when no error occurs
* apparently does not guarantee the output order matches the input order (?!?)

Added workarounds for both of these inconsistencies, so that readImages() returns the same result as before.