Allow multiple clients to pull the same tag simultaneously

If two clients simultaneously try to pull the same tag, there was a race
whereby one would succeed and the second would generate an error. Now,
the second simply waits for the first to complete.
Handle the case where poolAdd() gives an error for an unknown pool type
Merge pull request #2910 from codeaholics/wait-for-simultaneous-pull

Allow multiple clients to pull the same tag simultaneously