A Decentralized, Adaptive, Replica Location Service