Add timeout and blacklist strategies + API design (not finished yet).