Limit the number of parallel preview loadings in the image preview loader.

With ag/23192997 the preview cache size effectively increased the total
number of parallel image requests to a large enough value to DDoS Files
app's content provider i.e. when sharing a large number of images, cache
pre-population requests overlap with the actual preview loadings and
causing some of them to fail to load.

Update ImagePreviewImageLoader to use a Semaphore to limit the total
number of parallel preview loadings.

Fix: 283000541
Test: manual testing
Change-Id: I6152f6e589a8b36a4810d617633017b72202e66f
2 files changed