add some remember_upto_heres
wrap mutex around redis transactions

those need to be atomic