Rename the 'Sentinel' namespace to 'Redis' because they are essentially the same, only the role of sentinel vs redis clients is different, so to not duplicate logic, we should have only one namespace for those nodes
Implementing backoff when the role of the master isn't the master because it stepped down between discovery and connection.  To make this testable, we created a backoff strategy so that for testing no long sleep cycles are needed all the while allowing a sane backoff for production environments.