TODO: we need election timeout as well here