More functional FailoverProvider and tests.