backend: automatically batch the createrepo requests
Before we start running createrepo_c, we store the createrepo request
into Redis DB and give the potential lock() rivals chance to also finish
our task. When this happens, we just do nothing. OTOH when we win on
the lock(), we also try to check others' requests and process them.
Fixes: #813